Data Integration
Mandatory Events
Video/Audio Apps
24 min
the following events are needed for those business domains which are primarily video/audio based apps and monetize using videos/audios as our terminology says, for a video based app, the item is your video/audio content view item when a user checks the detail page of a video/audio content properties name type required description item docid\ xyfflvav fzf01nmc2zn yes the item details that the user view code example const props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false } }; cooeesdk sendevent("view item", props);const props = { 'item' { 'id' '1234', 'name' 'item name', 'category' { 'id' '1234', "name" 'category name' }, 'ispaid' true, 'hastrial' false } }; cooeesdk sendevent("view item", props);map\<string, object> item = new hashmap<>(); item put("id", "1234"); item put("name", "item name"); item put("ispaid", true); item put("hastrial", false); map\<string, object> category = new hashmap<>(); category put("id", "1234"); category put("name", "category name"); item put("category", category); map\<string, object> props = new hashmap<>(); props put("item", item); cooeesdk sendevent("view item", props);val props = mapof( "item" to mapof( "id" to "1234", "name" to "item name", "category" to mapof( "id" to "1234", "name" to "category name" ), "ispaid" to true, "name" to false ) ) cooeesdk sendevent("view item", props)nsdictionary props = @{ @"item" @{ @"id" @"1234", @"name" @"item name", @"category" @{ @"id" @"1234", @"name" @"category name" }, @"ispaid" @true, @"hastrial" @false } }; @try { \[cooeesdk sendeventwitheventname @"view item" eventproperties\ props error\ nil]; } @catch (nsexception exception) { nslog(@"%@", exception reason); } @finally { nslog(@"finally condition"); }let props = \[ "item" \[ "id" "1234", "name" "item name", "category" \[ "id" "1234", "name" "category name" ], "ispaid" true, "hastrial" false ] ] do { try cooeesdk sendevent(eventname "view item", eventproperties props) } catch { print("\\(error)") } dart var props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false } }; cooeesdk sendevent("view item", props); play item when a user starts playing a video or audio properties name type required description item docid\ xyfflvav fzf01nmc2zn yes the item details that the user playing code example const props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false } }; cooeesdk sendevent("play item", props);const props = { 'item' { 'id' '1234', 'name' 'item name', 'category' { 'id' '1234', "name" 'category name' }, 'ispaid' true, 'hastrial' false } }; cooeesdk sendevent("play item", props);map\<string, object> item = new hashmap<>(); item put("id", "1234"); item put("name", "item name"); item put("ispaid", true); item put("hastrial", false); map\<string, object> category = new hashmap<>(); category put("id", "1234"); category put("name", "category name"); item put("category", category); map\<string, object> props = new hashmap<>(); props put("item", item); cooeesdk sendevent("play item", props);val props = mapof( "item" to mapof( "id" to "1234", "name" to "item name", "category" to mapof( "id" to "1234", "name" to "category name" ), "ispaid" to true, "name" to false ) ) cooeesdk sendevent("play item", props)nsdictionary props = @{ @"item" @{ @"id" @"1234", @"name" @"item name", @"category" @{ @"id" @"1234", @"name" @"category name" }, @"ispaid" @true, @"hastrial" @false } }; @try { \[cooeesdk sendeventwitheventname @"play item" eventproperties\ props error\ nil]; } @catch (nsexception exception) { nslog(@"%@", exception reason); } @finally { nslog(@"finally condition"); }let props = \[ "item" \[ "id" "1234", "name" "item name", "category" \[ "id" "1234", "name" "category name" ], "ispaid" true, "hastrial" false ] ] do { try cooeesdk sendevent(eventname "play item", eventproperties props) } catch { print("\\(error)") } dart var props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false } }; cooeesdk sendevent("play item", props); pause item when a user pauses a video/audio properties name type required description item docid\ xyfflvav fzf01nmc2zn yes the item details that the user paused durationwatched number (seconds) yes how much time the user was watching/listening to the specific item watchedtill number (seconds) yes video/audio time on which user paused it time in seconds code example const props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false }, "durationwatched" 120, "watchedtill" 190 }; cooeesdk sendevent("pause item", props);const props = { 'item' { 'id' '1234', 'name' 'item name', 'category' { 'id' '1234', "name" 'category name' }, 'ispaid' true, 'hastrial' false }, 'durationwatched' 120, 'watchedtill' 190 }; cooeesdk sendevent('pause item', props);map\<string, object> item = new hashmap<>(); item put("id", "1234"); item put("name", "item name"); item put("ispaid", true); item put("hastrial", false); map\<string, object> category = new hashmap<>(); category put("id", "1234"); category put("name", "category name"); item put("category", category); map\<string, object> props = new hashmap<>(); props put("item", item); props put("durationwatched", 120); props put("watchedtill", 190); cooeesdk sendevent("pause item", props);val props = mapof( "item" to mapof( "id" to "1234", "name" to "item name", "category" to mapof( "id" to "1234", "name" to "category name" ), "ispaid" to true, "name" to false ), "durationwatched" to 120, "watchedtill" to 190 ) cooeesdk sendevent("pause item", props)nsdictionary props = @{ @"item" @{ @"id" @"1234", @"name" @"item name", @"category" @{ @"id" @"1234", @"name" @"category name" }, @"ispaid" @true, @"hastrial" @false }, @"durationwatched" @120, @"watchedtill" @190 }; @try { \[cooeesdk sendeventwitheventname @"pause item" eventproperties\ props error\ nil]; } @catch (nsexception exception) { nslog(@"%@", exception reason); } @finally { nslog(@"finally condition"); }let props = \[ "item" \[ "id" "1234", "name" "item name", "category" \[ "id" "1234", "name" "category name" ], "ispaid" true, "hastrial" false ], "durationwatched" 120, "watchedtill" 190 ] do { try cooeesdk sendevent(eventname "pause item", eventproperties props) } catch { print("\\(error)") } dart var props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false }, "durationwatched" 120, "watchedtill" 190 }; cooeesdk sendevent("pause item", props); exit item when the user closes or exits playing video/audio properties name type required description item docid\ xyfflvav fzf01nmc2zn yes the item details that the user exit playing durationwatched number (seconds) yes how much time the user was watching/listening to the specific item time in seconds watchedtill number (seconds) yes video/audio time on which user exit it time in seconds code example const props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false }, "durationwatched" 120, "watchedtill" 190 }; cooeesdk sendevent("exit item", props);const props = { 'item' { 'id' '1234', 'name' 'item name', 'category' { 'id' '1234', "name" 'category name' }, 'ispaid' true, 'hastrial' false }, 'durationwatched' 120, 'watchedtill' 190 }; cooeesdk sendevent('exit item', props);map\<string, object> item = new hashmap<>(); item put("id", "1234"); item put("name", "item name"); item put("ispaid", true); item put("hastrial", false); map\<string, object> category = new hashmap<>(); category put("id", "1234"); category put("name", "category name"); item put("category", category); map\<string, object> props = new hashmap<>(); props put("item", item); props put("durationwatched", 120); props put("watchedtill", 190); cooeesdk sendevent("exit item", props);val props = mapof( "item" to mapof( "id" to "1234", "name" to "item name", "category" to mapof( "id" to "1234", "name" to "category name" ), "ispaid" to true, "name" to false ), "durationwatched" to 120, "watchedtill" to 190 ) cooeesdk sendevent("exit item", props)nsdictionary props = @{ @"item" @{ @"id" @"1234", @"name" @"item name", @"category" @{ @"id" @"1234", @"name" @"category name" }, @"ispaid" @true, @"hastrial" @false }, @"durationwatched" @120, @"watchedtill" @190 }; @try { \[cooeesdk sendeventwitheventname @"exit item" eventproperties\ props error\ nil]; } @catch (nsexception exception) { nslog(@"%@", exception reason); } @finally { nslog(@"finally condition"); }let props = \[ "item" \[ "id" "1234", "name" "item name", "category" \[ "id" "1234", "name" "category name" ], "ispaid" true, "hastrial" false ], "durationwatched" 120, "watchedtill" 190 ] do { try cooeesdk sendevent(eventname "exit item", eventproperties props) } catch { print("\\(error)") } dart var props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false }, "durationwatched" 120, "watchedtill" 190 }; cooeesdk sendevent("exit item", props); seek item when the user closes or exits playing video/audio properties name type required description item docid\ xyfflvav fzf01nmc2zn yes the item details that the user seek gesture string yes video/audio is seek to forward/reverse seekduration number (seconds) no how much video/audio seek in seconds code example the following example includes optional properties too const props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false }, "gesture" "reverse", "seekduration" 190 }; cooeesdk sendevent("seek item", props);const props = { 'item' { 'id' '1234', 'name' 'item name', 'category' { 'id' '1234', "name" 'category name' }, 'ispaid' true, 'hastrial' false }, 'gesture' "reverse", 'seekduration' 190 }; cooeesdk sendevent('seek item', props);map\<string, object> item = new hashmap<>(); item put("id", "1234"); item put("name", "item name"); item put("ispaid", true); item put("hastrial", false); map\<string, object> category = new hashmap<>(); category put("id", "1234"); category put("name", "category name"); item put("category", category); map\<string, object> props = new hashmap<>(); props put("item", item); props put("gesture" "reverse"); props put("seekduration" 190); cooeesdk sendevent("seek item", props);val props = mapof( "item" to mapof( "id" to "1234", "name" to "item name", "category" to mapof( "id" to "1234", "name" to "category name" ), "ispaid" to true, "name" to false ), "gesture" to "reverse", "seekduration" to 190 ) cooeesdk sendevent("seek item", props)nsdictionary props = @{ @"item" @{ @"id" @"1234", @"name" @"item name", @"category" @{ @"id" @"1234", @"name" @"category name" }, @"ispaid" @true, @"hastrial" @false }, @"gesture" @"reverse", @"seekduration" @190 }; @try { \[cooeesdk sendeventwitheventname @"seek item" eventproperties\ props error\ nil]; } @catch (nsexception exception) { nslog(@"%@", exception reason); } @finally { nslog(@"finally condition"); }let props = \[ "item" \[ "id" "1234", "name" "item name", "category" \[ "id" "1234", "name" "category name" ], "ispaid" true, "hastrial" false ], "gesture" "reverse", "seekduration" 190 ] do { try cooeesdk sendevent(eventname "seek item", eventproperties props) } catch { print("\\(error)") } dart var props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false }, "gesture" "reverse", "seekduration" 190 }; cooeesdk sendevent("seek item", props); item favourite when a user marks a video/audio as a favourite properties name type required description item docid\ xyfflvav fzf01nmc2zn yes the item details that the user marks it as a favourite code example const props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false } }; cooeesdk sendevent("item favourite", props);const props = { 'item' { 'id' '1234', 'name' 'item name', 'category' { 'id' '1234', "name" 'category name' }, 'ispaid' true, 'hastrial' false } }; cooeesdk sendevent("item favourite", props);map\<string, object> item = new hashmap<>(); item put("id", "1234"); item put("name", "item name"); item put("ispaid", true); item put("hastrial", false); map\<string, object> category = new hashmap<>(); category put("id", "1234"); category put("name", "category name"); item put("category", category); map\<string, object> props = new hashmap<>(); props put("item", item); cooeesdk sendevent("item favourite", props);val props = mapof( "item" to mapof( "id" to "1234", "name" to "item name", "category" to mapof( "id" to "1234", "name" to "category name" ), "ispaid" to true, "name" to false ) ) cooeesdk sendevent("item favourite", props)nsdictionary props = @{ @"item" @{ @"id" @"1234", @"name" @"item name", @"category" @{ @"id" @"1234", @"name" @"category name" }, @"ispaid" @true, @"hastrial" @false } }; @try { \[cooeesdk sendeventwitheventname @"item favourite" eventproperties\ props error\ nil]; } @catch (nsexception exception) { nslog(@"%@", exception reason); } @finally { nslog(@"finally condition"); }let props = \[ "item" \[ "id" "1234", "name" "item name", "category" \[ "id" "1234", "name" "category name" ], "ispaid" true, "hastrial" false ] ] do { try cooeesdk sendevent(eventname "item favourite", eventproperties props) } catch { print("\\(error)") } dart var props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false } }; cooeesdk sendevent("item favourite", props); item unfavourite when a user removes a video/audio from a favourite properties name type required description item docid\ xyfflvav fzf01nmc2zn yes the item details that the user removes from favourite code example const props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false } }; cooeesdk sendevent("item unfavourite", props);const props = { 'item' { 'id' '1234', 'name' 'item name', 'category' { 'id' '1234', "name" 'category name' }, 'ispaid' true, 'hastrial' false } }; cooeesdk sendevent("item unfavourite", props);map\<string, object> item = new hashmap<>(); item put("id", "1234"); item put("name", "item name"); item put("ispaid", true); item put("hastrial", false); map\<string, object> category = new hashmap<>(); category put("id", "1234"); category put("name", "category name"); item put("category", category); map\<string, object> props = new hashmap<>(); props put("item", item); cooeesdk sendevent("item unfavourite", props);val props = mapof( "item" to mapof( "id" to "1234", "name" to "item name", "category" to mapof( "id" to "1234", "name" to "category name" ), "ispaid" to true, "name" to false ) ) cooeesdk sendevent("item unfavourite", props)nsdictionary props = @{ @"item" @{ @"id" @"1234", @"name" @"item name", @"category" @{ @"id" @"1234", @"name" @"category name" }, @"ispaid" @true, @"hastrial" @false } }; @try { \[cooeesdk sendeventwitheventname @"item unfavourite" eventproperties\ props error\ nil]; } @catch (nsexception exception) { nslog(@"%@", exception reason); } @finally { nslog(@"finally condition"); }let props = \[ "item" \[ "id" "1234", "name" "item name", "category" \[ "id" "1234", "name" "category name" ], "ispaid" true, "hastrial" false ] ] do { try cooeesdk sendevent(eventname "item unfavourite", eventproperties props) } catch { print("\\(error)") } dart var props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false } }; cooeesdk sendevent("item unfavourite", props); download item when a user downloads a video/audio for offline view properties name type required description item docid\ xyfflvav fzf01nmc2zn yes the item details that is downloaded for offline view code example const props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false } }; cooeesdk sendevent("download item", props);const props = { 'item' { 'id' '1234', 'name' 'item name', 'category' { 'id' '1234', "name" 'category name' }, 'ispaid' true, 'hastrial' false } }; cooeesdk sendevent("download item", props);map\<string, object> item = new hashmap<>(); item put("id", "1234"); item put("name", "item name"); item put("ispaid", true); item put("hastrial", false); map\<string, object> category = new hashmap<>(); category put("id", "1234"); category put("name", "category name"); item put("category", category); map\<string, object> props = new hashmap<>(); props put("item", item); cooeesdk sendevent("download item", props);val props = mapof( "item" to mapof( "id" to "1234", "name" to "item name", "category" to mapof( "id" to "1234", "name" to "category name" ), "ispaid" to true, "name" to false ) ) cooeesdk sendevent("download item", props)nsdictionary props = @{ @"item" @{ @"id" @"1234", @"name" @"item name", @"category" @{ @"id" @"1234", @"name" @"category name" }, @"ispaid" @true, @"hastrial" @false } }; @try { \[cooeesdk sendeventwitheventname @"download item" eventproperties\ props error\ nil]; } @catch (nsexception exception) { nslog(@"%@", exception reason); } @finally { nslog(@"finally condition"); }let props = \[ "item" \[ "id" "1234", "name" "item name", "category" \[ "id" "1234", "name" "category name" ], "ispaid" true, "hastrial" false ] ] do { try cooeesdk sendevent(eventname "download item", eventproperties props) } catch { print("\\(error)") } dart var props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false } }; cooeesdk sendevent("download item", props); delete download when a user downloads a video/audio for offline view properties name type required description item docid\ xyfflvav fzf01nmc2zn yes the downloaded item details which is removed from the offline view code example const props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false } }; cooeesdk sendevent("delete download", props);const props = { 'item' { 'id' '1234', 'name' 'item name', 'category' { 'id' '1234', "name" 'category name' }, 'ispaid' true, 'hastrial' false } }; cooeesdk sendevent("delete download", props);map\<string, object> item = new hashmap<>(); item put("id", "1234"); item put("name", "item name"); item put("ispaid", true); item put("hastrial", false); map\<string, object> category = new hashmap<>(); category put("id", "1234"); category put("name", "category name"); item put("category", category); map\<string, object> props = new hashmap<>(); props put("item", item); cooeesdk sendevent("delete download", props);val props = mapof( "item" to mapof( "id" to "1234", "name" to "item name", "category" to mapof( "id" to "1234", "name" to "category name" ), "ispaid" to true, "name" to false ) ) cooeesdk sendevent("delete download", props)nsdictionary props = @{ @"item" @{ @"id" @"1234", @"name" @"item name", @"category" @{ @"id" @"1234", @"name" @"category name" }, @"ispaid" @true, @"hastrial" @false } }; @try { \[cooeesdk sendeventwitheventname @"delete download" eventproperties\ props error\ nil]; } @catch (nsexception exception) { nslog(@"%@", exception reason); } @finally { nslog(@"finally condition"); }let props = \[ "item" \[ "id" "1234", "name" "item name", "category" \[ "id" "1234", "name" "category name" ], "ispaid" true, "hastrial" false ] ] do { try cooeesdk sendevent(eventname "delete download", eventproperties props) } catch { print("\\(error)") } dart var props = { "item" { "id" "1234", "name" "item name", "category" { "id" "1234", "name" "category name" }, "ispaid" true, "hastrial" false } }; cooeesdk sendevent("delete download", props);