<< Click to Display Table of Contents >> Navigation: Documentations techniques > OpenAir SDK > OnAir API > HTTP |
L’API HTTP est décrite par le WebService lui-même à l’adresse : http://[webservice-url]/Help
Liste des fonctions :
API |
Description |
GET api/OnAir/GetHubUrl |
récupère l'URL OnAirHub SignalR utilisée par les clients |
GET api/OnAir/GetDDODictionnary |
récupère la liste DDO surveillée par le service |
GET api/OnAir/GetDDOList |
pour la compatibilité ascendante - utilisez GetDDODictionnary |
POST api/OnAir/SubscribeDDO |
S'abonner au DDO pour recevoir des notifications sur l'OnAirHub |
POST api/OnAir/GetDDOConnectionState |
Donne l'état de connexion de DDO |
POST api/OnAir/GetDDOConfiguration |
Obtient la configuration des pistes du DDO |
POST api/OnAir/DragnDrop |
Glisser-déposer un article d'une cartouche à une autre |
POST api/OnAir/MoveItem |
Déplacer un élément dans une chaine |
POST api/OnAir/InsertItem |
Insérer un article de la base de données dans la cartouche spécifiée |
POST api/OnAir/ReplaceItem |
Remplacer un article de la base de données dans la cartouche spécifiée |
POST api/OnAir/RemoveItem |
Supprimer l'article dans la cartouche spécifiée |
POST api/OnAir/UnloadItem |
Décharger la cartouche spécifiée |
POST api/OnAir/LoadCart |
Charger un cartouchier sur le canal spécifié |
POST api/OnAir/GetItemToLoop |
Définir le mode boucle pour un élément |
POST api/OnAir/GetItemToChain |
Définir le mode d'enchainement |
POST api/OnAir/GetItemToPFL |
Demande PFL pour la cartouche spécifiée |
POST api/OnAir/GetDDOChannel |
Demande de notification InfosItem |
POST api/OnAir/GetStructPlaylist |
Récupère le contenu de la playlist du canal spécifié |
POST api/OnAir/GetDDOToStop |
Arrêter le canal spécifié |
POST api/OnAir/GetDDOToPlay |
Jouer le canal spécifié |
POST api/OnAir/GetDDOToPlayCart |
Jouer la cartouche spécifiée |
POST api/OnAir/GetOnAir |
Obtenir le statut ON AIR actuel |
POST api/OnAir/StayinAlive |
Maintenir le service actif (utilisé via une minuterie) |
POST api/OnAir/GetUiUpdate |
Obtenir le statut de l'interface utilisateur |
POST api/OnAir/GetChannelUpdate |
Obtenir le statut du canal spécifié |
GET api/OnAir/GetHubUrl
récupère l'URL OnAIRHub SignalR utilisé par le client
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Aucun.
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
GET api/OnAir/GetDDODictionnary
retrieves the DDO list monitored by the service
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Aucun.
Information de réponse
Description de la ressource
Collection of DDOIdentity
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
GUID |
Identifiant Unique de la connexion DDO |
globally unique identifier |
Aucun. |
name |
name du DDO fourni dans la configuration |
string |
Aucun. |
Formats de Réponse
application/json, text/json
Sample:
[
{
"GUID": "30baf26d-a137-4eb5-9d2e-ae8f79cf1694",
"name": "sample string 2"
},
{
"GUID": "30baf26d-a137-4eb5-9d2e-ae8f79cf1694",
"name": "sample string 2"
}
]
GET api/OnAir/GetDDOList
for backward compatibility - use GetDDODictionnary
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Aucun.
Information de réponse
Description de la ressource
Collection of DDOIdentity
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
GUID |
Identifiant Unique de la connexion DDO |
globally unique identifier |
Aucun. |
name |
name du DDO fourni dans la configuration |
string |
Aucun. |
Formats de Réponse
application/json, text/json
Sample:
[
{
"GUID": "772ee903-68f8-4855-8135-7fdbe65efcc8",
"name": "sample string 2"
},
{
"GUID": "772ee903-68f8-4855-8135-7fdbe65efcc8",
"name": "sample string 2"
}
]
POST api/OnAir/SubscribeDDO
Subscribe to the DDO to receive notifications over the OnAirHub
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
globally unique identifier |
Aucun. |
connectionId |
Unique identifier of the OnAirHub connection to subscribe |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "d0cc96d6-5802-4d3a-b1b6-0dfae6c28c6d",
"connectionId": "sample string 2"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/GetDDOConnectionState
Gives the connection state of DDO
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
Channel |
Index de la Chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"Channel": "sample string 2"
}
Information de réponse
Description de la ressource
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
State |
Etat de la connexion de OnAir sur DDOHub SignalR |
string |
Aucun. |
DDO |
Etat de la connexion du DDO sur DDOHub SignalR |
string |
Aucun. |
Formats de Réponse
application/json, text/json
Sample:
{
"State": "sample string 1",
"DDO": "sample string 2"
}
POST api/OnAir/GetDDOConfiguration
Gets the tracks configuration of the DDO
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
Channel |
Index de la Chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"Channel": "sample string 2"
}
Information de réponse
Description de la ressource
json string array of integral values
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/DragnDrop
Drag and Drop an item from a cart to another
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
ChannelOrg |
Source de la Chaîne |
string |
Aucun. |
NumcartOrg |
Source de la cartouche |
string |
Aucun. |
ChannelDest |
Destination de la Chaîne |
string |
Aucun. |
NumcartDest |
Destination de la cartouche |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"ChannelOrg": "sample string 2",
"NumcartOrg": "sample string 3",
"ChannelDest": "sample string 4",
"NumcartDest": "sample string 5"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/MoveItem
Move an item in a channel
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
Offset |
Déplacer Décalage |
string |
Aucun. |
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
Channel |
Index de la Chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"Offset": "sample string 1",
"ddoid": "sample string 2",
"Channel": "sample string 3"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/InsertItem
Insert an item from database into the specified cart
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
guid_item |
Guid de l'item dans la base de données |
string |
Aucun. |
track_num_dest |
Index de la chaîne |
string |
Aucun. |
cart_num_dest |
Index de la cartouche |
string |
Aucun. |
insert_mod |
Type de mode d'insertion - non utilisé, toujours avant |
string |
Aucun. |
item |
Tuple d'élément JSON |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"guid_item": "sample string 2",
"track_num_dest": "sample string 3",
"cart_num_dest": "sample string 4",
"insert_mod": "sample string 5",
"item": "sample string 6"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/ReplaceItem
Replace an item from database into the specified cart
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
guid_item |
Guid de l'item dans la base de données |
string |
Aucun. |
track_num_dest |
Index de la chaîne |
string |
Aucun. |
cart_num_dest |
Index de la cartouche |
string |
Aucun. |
insert_mod |
Type de mode d'insertion - non utilisé, toujours avant |
string |
Aucun. |
item |
Tuple d'élément JSON |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"guid_item": "sample string 2",
"track_num_dest": "sample string 3",
"cart_num_dest": "sample string 4",
"insert_mod": "sample string 5",
"item": "sample string 6"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/RemoveItem
Remove item at the specified cart
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
guid_item |
Guid de l'item dans la base de données |
string |
Aucun. |
track_num_dest |
Index de la chaîne |
string |
Aucun. |
cart_num_dest |
Index de la cartouche |
string |
Aucun. |
insert_mod |
Type de mode d'insertion - non utilisé, toujours avant |
string |
Aucun. |
item |
Tuple d'élément JSON |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"guid_item": "sample string 2",
"track_num_dest": "sample string 3",
"cart_num_dest": "sample string 4",
"insert_mod": "sample string 5",
"item": "sample string 6"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/UnloadItem
Unload the specified cart
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
guid_item |
Guid de l'item dans la base de données |
string |
Aucun. |
track_num_dest |
Index de la chaîne |
string |
Aucun. |
cart_num_dest |
Index de la cartouche |
string |
Aucun. |
insert_mod |
Type de mode d'insertion - non utilisé, toujours avant |
string |
Aucun. |
item |
Tuple d'élément JSON |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"guid_item": "sample string 2",
"track_num_dest": "sample string 3",
"cart_num_dest": "sample string 4",
"insert_mod": "sample string 5",
"item": "sample string 6"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/LoadCart
Load a cartouchier at the specified channel
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
guid_item |
Guid de l'item dans la base de données |
string |
Aucun. |
track_num_dest |
Index de la chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"guid_item": "sample string 2",
"track_num_dest": "sample string 3"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/GetItemToLoop
Set item loop mode
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
Numcart |
Index de la cartouche |
string |
Aucun. |
Do |
Activé lorsque "1", désactivé sinon |
string |
Aucun. |
Mode |
Mode à appliquer |
string |
Aucun. |
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
Channel |
Index de la Chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"Numcart": "sample string 1",
"Do": "sample string 2",
"Mode": "sample string 3",
"ddoid": "sample string 4",
"Channel": "sample string 5"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/GetItemToChain
Set item chain mode
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
Numcart |
Index de la cartouche |
string |
Aucun. |
Do |
Activé lorsque "1", désactivé sinon |
string |
Aucun. |
Mode |
Mode à appliquer |
string |
Aucun. |
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
Channel |
Index de la Chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"Numcart": "sample string 1",
"Do": "sample string 2",
"Mode": "sample string 3",
"ddoid": "sample string 4",
"Channel": "sample string 5"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/GetItemToPFL
Request PFL for specified cart
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
Numcart |
Index de la cartouche |
string |
Aucun. |
Do |
Activé lorsque "1", désactivé sinon |
string |
Aucun. |
Mode |
Mode à appliquer |
string |
Aucun. |
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
Channel |
Index de la Chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"Numcart": "sample string 1",
"Do": "sample string 2",
"Mode": "sample string 3",
"ddoid": "sample string 4",
"Channel": "sample string 5"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/GetDDOChannel
Request to get notification InfosItem
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
Channel |
Index de la Chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"Channel": "sample string 2"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/GetStructPlaylist
Get the playlist content of the specified channel
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
Channel |
Index de la Chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"Channel": "sample string 2"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/GetDDOToStop
Stop the specified channel
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
Channel |
Index de la Chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"Channel": "sample string 2"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/GetDDOToPlay
Play the specified channel
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
Channel |
Index de la Chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"Channel": "sample string 2"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/GetDDOToPlayCart
Play the specified cart
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
Numcart |
Index de la cartouche |
string |
Aucun. |
Do |
Activé lorsque "1", désactivé sinon |
string |
Aucun. |
Mode |
Mode à appliquer |
string |
Aucun. |
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
Channel |
Index de la Chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"Numcart": "sample string 1",
"Do": "sample string 2",
"Mode": "sample string 3",
"ddoid": "sample string 4",
"Channel": "sample string 5"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/GetOnAir
Get the current on air status
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
Channel |
Index de la Chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"Channel": "sample string 2"
}
Information de réponse
Description de la ressource
Collection of StatusMessage
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
DDO_ID |
|
string |
Aucun. |
CHANNEL |
|
integer |
Aucun. |
NUM_CART |
|
integer |
Aucun. |
STATUS |
|
string |
Aucun. |
GUID_RUN |
|
string |
Aucun. |
STRING_1 |
|
string |
Aucun. |
STRING_2 |
|
string |
Aucun. |
TYPE_ITEM |
|
integer |
Aucun. |
TYPE1_ITEM |
|
integer |
Aucun. |
OUTRO |
|
string |
Aucun. |
INTRO |
|
string |
Aucun. |
GUID_LOG |
|
string |
Aucun. |
GUID_ITEM |
|
string |
Aucun. |
Formats de Réponse
application/json, text/json
Sample:
[
{
"DDO_ID": "sample string 1",
"CHANNEL": 2,
"NUM_CART": 1,
"STATUS": "sample string 3",
"GUID_RUN": "sample string 4",
"STRING_1": "sample string 5",
"STRING_2": "sample string 6",
"TYPE_ITEM": 7,
"TYPE1_ITEM": 8,
"OUTRO": "sample string 9",
"INTRO": "sample string 10",
"GUID_LOG": "sample string 11",
"GUID_ITEM": "sample string 12"
},
{
"DDO_ID": "sample string 1",
"CHANNEL": 2,
"NUM_CART": 1,
"STATUS": "sample string 3",
"GUID_RUN": "sample string 4",
"STRING_1": "sample string 5",
"STRING_2": "sample string 6",
"TYPE_ITEM": 7,
"TYPE1_ITEM": 8,
"OUTRO": "sample string 9",
"INTRO": "sample string 10",
"GUID_LOG": "sample string 11",
"GUID_ITEM": "sample string 12"
}
]
POST api/OnAir/StayinAlive
Keep service alive (used through a timer)
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Aucun.
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/GetUiUpdate
Get the status of the UI
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
Channel |
Index de la Chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"Channel": "sample string 2"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
POST api/OnAir/GetChannelUpdate
Get status of the specified channel
Information Requise
URI Paramètres
Aucun.
Body Paramètres
Nom |
Description |
Type |
Informations supplémentaires |
---|---|---|---|
ddoid |
Identifiant Unique de la connexion DDO |
string |
Aucun. |
Channel |
Index de la Chaîne |
string |
Aucun. |
Request Formats
application/json, text/json
Sample:
{
"ddoid": "sample string 1",
"Channel": "sample string 2"
}
Information de réponse
Description de la ressource
string
Formats de Réponse
application/json, text/json
Sample:
"sample string 1"
OnAirHub (SignalR)
Liste des fonctions :
API |
Description |
PlaylistMessage |
the full playlists in conduct (usually sent on update) |
InOutroCounter |
counters for Intro/Outro |
MainCounter |
main counter |
FocusMessage |
guid_run of a channel's new focus |
ConnectionStatus |
information on a DDO connection status change |
TrackStatusMessage |
status (play/pause/run) and information (name, guid...) of a track |
OnAirInfoItem |
all data on an ui cart change |
ItemStatusMessage |
status (play/pause/run) and information (name, guid, numcart...) of an item |
HTML/JS exemple
<!DOCTYPE html>
<html>
<head>
<title>SignalR Simple Chat</title>
<style type="text/css">
.container {
background-color: #99CCFF;
border: thick solid #808080;
padding: 20px;
margin: 20px;
}
.channel {
font-size:36px;
font-weight:bold;
}
.discussion {
font-size: 20px;
}
</style>
</head>
<body>
<div><a href="Help">API reference</a></div>
<div>Connection Id: <span id="connection_id"></span></div>
<div class="container">
<select id="ddo"></select><div>DDO ID: <span id="ddo_id"></span></div>
<div id="channel1" class="channel">
<span>Channel 1</span>
<div id="main-counter" class="discussion"></div>
<div id="inoutro-counter" class="discussion"></div>
</div>
<div id="channel2" class="channel">
<span>Channel 2</span>
<div id="main-counter" class="discussion"></div>
<div id="inoutro-counter" class="discussion"></div>
</div>
<div id="channel3" class="channel">
<span>Channel 3</span>
<div id="main-counter" class="discussion"></div>
<div id="inoutro-counter" class="discussion"></div>
</div>
<div id="channel4" class="channel">
<span>Channel 4</span>
<div id="main-counter" class="discussion"></div>
<div id="inoutro-counter" class="discussion"></div>
</div>
<button onclick="GetStructPlaylist()">GetStructPlaylist</button>
<select id="playlist_channel">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
<div id="playlist" class="discussion"></div>
</div>
<!--Script references. -->
<!--Reference the jQuery library. -->
<script src="Scripts/jquery-3.3.1.min.js"></script>
<!--Reference the SignalR library. -->
<script src="Scripts/jquery.signalR-2.2.3.min.js"></script>
<!--Add script to update the page and send messages.-->
<script type="text/javascript">
function getRestUrl(action) {
return location.href + "api/OnAir/" + action;
}
// gets the hub url
function getHubUrl()
{
var hubUrl = "";
jQuery.ajax({
type: "GET",
url: getRestUrl("GetHubUrl"),
success: function (data, status, jqXHR) {
console.log(data);
hubUrl = data;
},
error: function (xhr) {
alert(xhr.responseText);
},
async: false
});
return hubUrl;
}
setInterval(getHubUrl, 60000);
var hubUrl = getHubUrl();
// load hubs script
$.getScript(hubUrl + "/hubs", loadHub);
function loadHub() {
// Declare a proxy to reference the hub.
var chat = $.connection.onairHub;
// define the correct hub url routing
$.connection.hub.url = hubUrl;
chat.client.ChangeItem = function (name, message) {
console.log(JSON.parse(message));
};
chat.client.MockMessage = function (name, message) {
console.log(message);
};
// Create a function that the hub can call to broadcast messages.
chat.client.MainCounter = function (name, message) {
// Html encode display name and message.
var encodedName = $('<div />').text(name).html();
var encodedMsg = $('<div />').text(message).html();
// Add the message to the page.
$("#channel" + JSON.parse(message).Channel).find('#main-counter').html('<strong>' + encodedName
+ '</strong>: ' + encodedMsg);
};
chat.client.InOutroCounter = function (name, message) {
// Html encode display name and message.
var encodedName = $('<div />').text(name).html();
var encodedMsg = $('<div />').text(message).html();
// Add the message to the page.
$("#channel" + JSON.parse(message).Channel).find('#inoutro-counter').html('<strong>' + encodedName
+ '</strong>: ' + encodedMsg);
};
chat.client.ConnectionStatus = function (name, message) {
console.log(message);
};
chat.client.PlaylistMessage = function (name, message) {
console.log(message);
};
chat.client.ItemStatusMessage = function (name, message) {
console.log(message);
};
chat.client.TrackStatusMessage = function (name, message) {
console.log(message);
};
// Get the user name and store it to prepend to messages.
//$('#displayname').val(prompt('Enter your name:', ''));
// Set initial focus to message input box.
$('#message').focus();
// Start the connection.
$.connection.hub.start().done(function () {
console.log("id : %o", $.connection.hub.id);
$("#connection_id").text($.connection.hub.id);
$('#sendmessage').click(function () {
// Call the Send method on the hub.
chat.server.send($('#displayname').val(), $('#message').val());
// Clear text box and reset focus for next comment.
$('#message').val('').focus();
});
// update of DDO select
jQuery.ajax({
type: "GET",
url: getRestUrl("GetDDODictionnary"),
success: function (data, status, jqXHR) {
console.log(data);
var obj = (data);
$("#ddo").empty();
$("#ddo").append($("<option>"));
for (var key in obj) {
var ddo = obj[key];
$("#ddo").append($("<option>").attr("value", ddo.GUID).text(ddo.name));
}
},
error: function (xhr) {
alert(xhr.responseText);
}
});
// add subscription
$("#ddo").change(function () {
//alert("Handler for .change() called.");
jQuery.ajax({
type: "POST",
url: getRestUrl("SubscribeDDO"),
data: JSON.stringify({
ddoid: $(this).val(),
connectionid: $.connection.hub.id
}),
contentType: "application/json",
success: function (data, status, jqXHR) {
console.log(data);
},
error: function (xhr) {
alert(xhr.responseText);
}
});
$("#ddo_id").text($(this).val());
});
});
}
function GetStructPlaylist() {
jQuery.ajax({
type: "POST",
url: getRestUrl("GetStructPlaylist"),
data: JSON.stringify({
ddoid: $("#ddo").val(),
Channel: $("#playlist_channel").val()
}),
contentType: "application/json",
success: function (data, status, jqXHR) {
console.log(data);
$("#playlist").text((data));
},
error: function (xhr) {
alert(xhr.responseText);
}
});
}
</script>
</body>
</html>