Brightsign Network Web API Reference Manual v.3.8 User Manual

Browse online or download User Manual for Software Brightsign Network Web API Reference Manual v.3.8. BrightSign Network Web API Reference Manual v.3.8 User Manual

  • Download
  • Add to my manuals
  • Print

Summary of Contents

Page 1 - API REFERENCE MANUAL

API REFERENCE MANUAL BrightSign Network Version 3.8 BrightSign, LLC. 16795 Lark Ave., Suite 200 Los Gatos, CA 95032 | 408-852-9263 | www.bright

Page 2 - TABLE OF CONTENTS

Group ... 94 Group En

Page 3

88 Required Permissions None Parameters • [DeviceModel] deviceModel: A DeviceModel enumeration indicating the model of BrightSign player to evaluat

Page 4

89 Note that when using this method to check whether a Presentation instance can be deleted, a False status may change in the time between calling t

Page 5

90 o The resolution in the ScreenSettings structure is not compatible with the specified device model (see the Output Resolutions FAQ for more deta

Page 6

91 device model of a passed presentation entity. The instance must also have a Zones list property containing PresentationContent and DynamicPlaylis

Page 7

92 Required Permissions Presentation: Update Presentation Parameters • [int] presentationId: The identifier and primary key of the Presentation ins

Page 8

93 • [PresentationZone] entity: A PresentationZone structure with an initialized [int] Id and an updated set of properties, including a new Content

Page 9

94 GROUP Group Entity The Group entity has the following properties: • [int] Id:(Read Only) The identifier and primary key of the Group instance. •

Page 10

95 Group Management Web Methods • PagedList<Group> GetGroups(string marker, int pageSize) • List<Group> GetSpecifiedGroups(int[] group

Page 11

96 List<Group> GetSpecifiedGroups(int[] presentationIds) Description Retrieves a list of Group instances matching the specified identifiers. T

Page 12

97 not positive, then the method will return the maximum allowed number of objects. Attempting to request more objects than is allowed will lead to

Page 13 - INTRODUCTION

Device Entity ...

Page 14 - Methods

98 Group CreateGroup(Group entity) Description Creates a new Group instance with the specified name and settings. If successful, this method will re

Page 15

99 deletion is reserved (i.e. the default “Unassigned” Group instance) or if the [int] Id value is positive and does not correspond to an existing G

Page 16 - SOAP Endpoints

100 SCHEDULE ScheduledPresentation Entity-Relation The ScheduledPresentation entity-relation represents the relationship between a Presentation and

Page 17 - SOAP Access Point URLs

101 Note: A presentation scheduled for “all day, every day” can be created with the following property settings: StartTime as “00:00:00”, EndTime as

Page 18 - Development Tools

102 Parameters • [int] groupID: The identifier of the Group instance that is associated with the schedule. If a Group instance with the specified i

Page 19 - CONTENT

103 o The specified Group[int] Id or Group [string] Name does not correspond to an existing Group instance. o The [TimeSpan] StartTime value of th

Page 20 - ContentType Enumeration

104 the method will immediately return Null without an Error. A descriptive error will be returned if any of the following conditions occur: o The

Page 21

105 Parameters • [int] groupId: The identifier of the Group instance to modify. If the Group [int] Id does not correspond to an existing Group inst

Page 22

106 Required Permissions Schedule: Update Schedule, Remove Presentation – Presentation Unassign Presentation Parameters • [int] ScheduledPresentati

Page 23 - PresentationInfo Structure

107 DEVICE Device Entity The Device entity has the following properties: • [int] Id:(Read Only) The identifier and primary key of the Device instan

Page 24

PagedList<DeviceDownload> GetDeviceDownloads(int deviceId, string marker, int pageSize) ...

Page 25

108 • [string] CardSize:(Read Only) The total size of the device storage. This information is displayed in the format “{0} MiB” or “{0:F2} GiB” (wh

Page 26

109 • [DateTime] LastSyncSpecProcessedTime • [DateTime] LastContentDownloadStartTime:(Read Only) A UTC timestamp indicating when the device last b

Page 27

110 • [int] AccountId:(Read Only) The identifier of the BrightSign Network account that owns the DeviceSubscription instance. • [int] DeviceId:(Re

Page 28

111 • [DateTime] EndDate:(Read Only) A UTC timestamp that represents the end of the time range covered by the DeviceLogReport instance. • [DateTim

Page 29

112 • Active: The normal operational status of a subscription. • Suspending: An intermediate status between “Active” and “Suspended”, indicating t

Page 30 - CONTENT UPLOAD

113 • [int] WiredConnection Priority: A number that defines the priority of a wired connection for the device. • [int] WirelessConnectionPriority:

Page 31 - Web Page Update Work Flow

114 • [string] SubnetMask: A user-defined IPv4 subnetwork mask for the device wireless connection. • [string] DefaultGateway: A user-defined IPv4

Page 32 - Content Upload Web Methods

115 DeviceError Structure The DeviceError structure has the following values. • [DateTime] Timestamp:(Read Only) A UTC timestamp indicating the mos

Page 33

116 • bool RenameDevice(int deviceId, string newName, string newDescription) • bool UpdateDeviceLogsSettings(int deviceId, DeviceLogsSettings sett

Page 34

117 not positive, then the method will return the maximum allowed number of objects. Attempting to request more objects than is allowed will lead to

Page 35

1 INTRODUCTION The BrightSign Network API exposes a large set of WebUI functionality using a standardized set of entities, methods, and properties.

Page 36

118 • [int] pageSize: The maximum number of objects returned by the method. If the list of objects that match the search criteria exceeds the [int]

Page 37

119 PagedList<DeviceError> GetDeviceErrors(int deviceId, string marker, int pageSize) Description Retrieves the next page of the DeviceError l

Page 38

120 • [string] marker: The timestamp of the last DeviceDownload instance on the previous page. If the value is Null, then the method will retrieve

Page 39

121 Required Permissions Device: Update Device Parameters • [int] DeviceId: The identifier and primary key of the Device instance to be updated. If

Page 40

122 bool ForceDevicesReboot(int[] deviceIds) Description Enables the flags indicating that the specified device(s) should reboot during the next che

Page 41

123 bool ForceDevicesRecovery(int[] deviceIds, bool reformat) Description Enables the flags indicating that the specified device(s) should download

Page 42

124 an existing Device instance will also result in an error. Passing an empty array will lead to an immediate False response without an error. bool

Page 43 - DYNAMIC PLAYLIST

125 Parameters • [int[]] deviceIds: An array of identifiers corresponding to the Device instance(s) that should be affected. The number of passed i

Page 44

126 not positive, then the method will return the maximum allowed number of objects. Attempting to request more objects than is allowed will lead to

Page 45

2 Methods The BSN Web API provides different methods to perform similar operations. It is possible, for example, to retrieve/update either all or a

Page 46

3 Find{EntityName(s)} Methods of this type allow you to search for entities using a [string] Name pattern (including wildcards). This method type on

Page 47

4 Specific Update Methods: e.g. UpdateGroupsAutorun These methods receive Entity IDs and one or more values for updating logically related propertie

Page 48

5 Once you find such a tool/library for your platform, you will be able to create a service reference for the web service and work with it using fam

Page 49

6 User Authentication Credentials Both BSN endpoints use simple username-password authentication; the username has the following format: {AccountNam

Page 50

7 CONTENT Content Entity The Content entity has the following properties: • [int] Id:(Read only) The identifier and primary key of the Content enti

Page 51

TABLE OF CONTENTS Introduction ...

Page 52

8 ContentFolder Entity The ContentFolder entity has the following properties: • [int] Id:(Read only) The identifier and primary key of the ContentF

Page 53

9 • WipeFromLeft • WipeFromRight • ExplodeFromCenter • ExplodeFromTopLeft • ExplodeFromTopRight • ExplodeFromBottomLeft • ExplodeFromBottomRi

Page 54

10 • [DateTime] ValidityStartDate: A value that determines the validity start date for the associated content item (i.e. the point at which the con

Page 55

11 • [ContentType] ContentType: A ContentType enumeration that allows a system to distinguish between a media file and a Dynamic Playlist. DynamicP

Page 56 - LIVE TEXT FEED

12 • bool DeleteContent(int[] contentIds) Note: Content update and creation operations can only be performed by the File Upload Service. PagedList&

Page 57

13 Parameters • [string] virtualPath: The virtual path of the parent ContentFolder entity containing the requested subfolders. The root virtual pat

Page 58

14 Parameters • [Int[]] contentIds: An array of [int] Id values for the Content instances being requested. The maximum number of items is limited t

Page 59

15 Required Permissions Content: View Content Parameters • [int] contentId: The identifier and primary key of the associated Content instance. Cont

Page 60

16 Required Permissions Content: Update Content Parameters • [int[]] contentIds: An array of [int] Id values for the Content and/or ContentFolder i

Page 61

17 bool DeleteContent(int[] contentIds) Description Deletes the specified Content and ContentFolder instances, as well as any associated files, in b

Page 62

ContentType Enumeration ...

Page 63

18 CONTENT UPLOAD Overview Content Upload methods use a separate SOAP endpoint from all other Web API methods. To upload a file, the client must fir

Page 64

19 a. Call StartFileUpload() using parameters for the asset file, as well as the session token and asset upload token from the WebPageUploadStatus

Page 65 - LIVE MEDIA FEED

20 i. Call AppendChunk() for the number of times needed to complete the asset file upload. Use the session token and asset upload token from the We

Page 66

21 ContentUploadStatus StartFileUpload(string uploadToken, string sessionToken, string filename, long filesize, int chunksCount, enum ContentType, d

Page 67

22 • [enum: Auto, Image, Video, Audio, Webpage] contentType: The type of the content file. The default type is “Image”. • [DateTime] fileLastModif

Page 68

23 Parameters • [string] uploadToken: The token of the upload that was initialized by the StartFileUpload() or StartWebPageUpload() method. A descr

Page 69

24 o This string is empty. o The string has more than 128 characters. o The file name is not valid. • [long] filesize: The size of the video fil

Page 70

25 WebPageUploadStatus StartWebPageUploadSession(array webpageAssets[], string uploadToken, string sessionToken, string filename, long filesize, int

Page 71

26 o [string] virtualPath: The path in the BSN Library to which the file should be uploaded. If the path does not exist, it will be created. It mus

Page 72

27 • [string] sha1Hash: The SHA1 hash of the webpage file. The server performs verification of the uploaded file using the specified hash. A descri

Page 73

Web Page Update Work Flow ...

Page 74 - WEB PAGE

28 o [int] chunksCount: The number of chunks the file consists of (starting at 1). The optimal chunk size is 256KiB. Files that are larger than thi

Page 75

29 • [enum: Auto, Image, Video, Audio, Webpage] contentType: The type of the content file, which should be specified as “Webpage”. • [string] virt

Page 76

30 Required Permissions None Parameters [string] sessionToken: The token of the upload session initialized by the StartFileUpload() method. If the s

Page 77

31 DYNAMIC PLAYLIST ImageVideoDynamicPlaylist Entity The ImageVideoDynamicPlaylist entity represents a Dynamic Playlist containing image or video fi

Page 78

32 • [string] PhysicalPath:(Read Only) The external URL of the Dynamic Playlist MRSS file in persistent storage. • [long] FileSize:(Read Only) The

Page 79

33 • bool CheckDynamicPlaylistUsageByName(string name) • DynamicPlaylist CreateDynamicPlaylist(DynamicPlaylist entity) • bool UpdateDynamicPlayli

Page 80

34 PagedList<ImageVideoDynamicPlaylist> GetImageVideoDynamicPlaylists(string marker, int pageSize) Description Retrieves the next page of the

Page 81

35 Parameters • [string] marker: The [string] Name of the last AudioDynamicPlaylist instance on the previous page. If the value is Null, then the m

Page 82 - DEVICE WEB PAGE

36 method retrieves both ImageVideoDynamicPlaylist and AudioDynamicPlaylist instances; these instances can be differentiated by data type. Required

Page 83

37 Parameters • [string] namePattern: The exact [string] Name of the ImageVideoDynamicPlaylist instance (or its wildcard-based pattern). Supported

Page 84

PagedList<AudioDynamicPlaylist> GetAudioDynamicPlaylists(string marker, int pageSize) ...

Page 85

38 truncated. If the integer is not positive, then the method will return the maximum allowed number of objects. Attempting to request more objects

Page 86

39 • [bool] loadContent: A flag that specifies whether the method should also initialize and return a list of all Content instances in use by the r

Page 87

40 Required Permissions Dynamic Playlist: View Dynamic Playlists Parameters • [int] dynamicPlaylistId: The identifier and primary key of the ImageV

Page 88

41 Required Permissions Dynamic Playlist: Create Dynamic Playlist – Content: Assign Content Parameters • [DynamicPlaylist] entity: An ImageVideoDyn

Page 89 - PRESENTATION

42 o The passed string is more than 50 characters. o The passed string does not match a preexisting Dynamic Playlist. o The [int] DisplayDuration

Page 90 - ScreenSettings Structure

43 Parameters • [int[]] dynamicPlaylistIds: An array of [int] Id values for the instances to be deleted. The number of items that can be deleted is

Page 91

44 LIVE TEXT FEED LiveTextFeed Entity The LiveTextFeed entity has the following properties: • [int] Id:(Read Only) The identifier and primary key o

Page 92

45 • [DateTime] ValidityEndDate: A value that determines the validity end date for the associated item (i.e. the point at which the item will no lo

Page 93 - PresentationZone Structure

46 Parameters • [string] marker: The [string] Name of the last LiveTextFeed instance on the previous page. If the value is Null, then the method wi

Page 94

47 Required Permissions Live Text Feed: View Live Text Feeds Parameters • [string] namePattern: The exact [string] Name of the LiveTextFeed instanc

Page 95 - GroupInfo Structure

List<LiveTextFeed> GetSpecifiedLiveTextFeeds(int[] liveTextFeedIds) ...

Page 96

48 LiveTextFeed GetLiveTextFeedByName(string name, bool loadContent) Description Retrieves the LiveTextFeed instance with the specified [string] Nam

Page 97

49 bool CheckLiveTextFeedUsage(int liveTextFeedId) Description Determines whether the LiveTextFeed instance (specified by its primary key) is refere

Page 98

50 LiveTextFeed CreateLiveTextFeed(LiveTextFeed entity) Description Creates a new LiveTextFeed instance and related RSS file with the specified [str

Page 99

51 Parameters • [string] feedUrl: An external URL of a publicly available RSS feed. The RSS Title will be used as the LiveTextFeed instance name an

Page 100

52 bool RenameLiveTextFeed(int liveTextFeedId, string newName) Description Updates the [string] Name of the specified LiveTextFeed instance. This me

Page 101

53 LIVE MEDIA FEED LiveMediaFeed Entity The LiveMediaFeed entity has the following properties: • [int] Id:(Read Only) The identifier and primary ke

Page 102

54 • [string] Description: The value (i.e. MRSS item description) of the associated media item in the related Live Media Feed. • [TimeSpan] Displa

Page 103

55 PagedList<LiveMediaFeed> GetLiveMediaFeeds(string marker, int pageSize) Description Retrieves the next page of the LiveMediaFeed list, sort

Page 104

56 PagedList<LiveMediaFeed> FindLiveMediaFeeds(string namePattern, string marker, int pageSize) Description Retrieves the next page of a LiveM

Page 105

57 • [bool] loadAssets: A flag specifying whether the method should also initialize and return a list of all content files currently being used by

Page 106 - Group Entity

LiveMediaFeed GetLiveMediaFeed(int liveMediaFeedId, bool loadContent) ...

Page 107 - Group Management Web Methods

58 Parameters • [string] name: The Live Media Feed [string] Name value to be evaluated. LiveMediaFeed CreateLiveMediaFeed(LiveMediaFeed entity) Des

Page 108

59 o One or more custom field names contain a string that is reserved for the MRSS feed: "title", "description", "link&quo

Page 109

60 bool RenameLiveMediaFeed(int liveMediaFeedId, string newName) Description Updates the [string] Name of the specified LiveMediaFeed instance. This

Page 110

61 o An empty array is passed to the server.

Page 111

62 WEB PAGE WebPage Entity The WebPage entity has the following properties: • [int] Id:(Read Only) The identifier and primary key of the WebPage in

Page 112 - SCHEDULE

63 • [long] FileSize:(Read Only) The size (in bytes) of the associated asset file. PresentationContent Entity-Relation The PresentationContent enti

Page 113

64 PagedList<WebPage> GetWebPages(string marker, int pageSize) Description Retrieves the next page of the WebPage list, sorted by [string] Nam

Page 114

65 PagedList<WebPage> FindWebPages(string namePattern, string marker, int pageSize) Description Retrieves the next page of a WebPage list cont

Page 115

66 • [bool] loadAssets: A flag specifying whether the method should also initialize and return a list of all assets currently being used by the Web

Page 116

67 Parameters • [string] name: The Web Page Name value to be evaluated. bool CheckWebPageUsage(int liveTextFeedId) Description Determines whether t

Page 117

bool CheckWebPageUsageByName(string name) ...

Page 118

68 Parameters • [string] name: The user-defined name of the WebPage instance to evaluate. If a WebPage instance with the specified [string] Name do

Page 119 - Device Entity

69 cause an error. Passing Web Page identifiers that don’t exist will also result in an error return. Passing an empty array will lead to an immedia

Page 120

70 DEVICE WEB PAGE DeviceWebPage Entity The DeviceWebPage entity has the following properties: • [int] Id:(Read Only) The identifier and primary ke

Page 121 - DeviceSubscription Entity

71 • bool CheckDeviceWebPageUsage(int deviceWebPageId) • bool CheckDeviceWebPageUsageByName(string name) • bool RenameDeviceWebPage(int deviceWeb

Page 122 - DeviceLogReport Entity

72 Parameters • [int[]] deviceWebPageIds: An array of [int] Id values for the DeviceWebPage instances being requested. The number of items is limit

Page 123 - DeviceLogType Enumeration

73 Required Permissions Web Page: View Web Pages Parameters • [int] deviceWebPageId: The identifier and primary key of the DeviceWebPage instance t

Page 124

74 Required Permissions None Parameters • [string] name: The Device Web Page Name value to be evaluated. bool CheckDeviceWebPageUsage(int liveTextF

Page 125

75 Required Permissions None Parameters • [string] name: The user-defined name of the DeviceWebPage instance to evaluate. If a DeviceWebPage instan

Page 126 - DeviceLogsSettings Structure

76 Parameters • [int[]] deviceWebPageIds: An array of [int] Id values for the DeviceWebPage instances to be deleted. The number of items is limited

Page 127 - DeviceDownload Structure

77 PRESENTATION Presentation Entity The Presentation entities has the following properties: • [int] Id:(Read Only) The identifier and primary key o

Page 128

PresentationLanguage Enumeration ...

Page 129

78 DeviceModel Enumeration The DeviceModel enumeration can contain the following values: • Unknown: This value is used by the server for presentati

Page 130

79 Note: This enumeration is set to Null for presentations created in BrightAuthor. o 1920x1080x60p o 1920x1080x59.94p o 1920x1080x50p o 1920x10

Page 131

80 o 800x600x60p o 720x576x50p o 720x480x60p o 720x480x59.94p o 640x480x60p o SECAM o NTSC-COMPONENT o PAL-COMPONENT o NTSC-M o NTSC-M-JPN

Page 132

81 o OverscanActionSafeArea o OverscanTitleSafeArea PresentationZone Structure The PresentationZone structure has the following properties: • [in

Page 133

82 • [AnalogOutputMode] AnalogOutput: An AnalogOutputMode enumeration, which can contain the following values: o None o PCM • [HDMIOutputMode] H

Page 134

83 o None o PCM o PassThrough • [SPDIFOutputMode] SPDIFOutput: A SPDIFOutputMode enumeration, which can contain the following values: o None o

Page 135

84 • ScreenResolution[] GetSupportedScreenResolutions(DeviceModel deviceModel, ConnectorType connectorType) • bool CheckPresentationName(string na

Page 136

85 not positive, then the method will return the maximum allowed number of objects. Attempting to request more objects than is allowed will lead to

Page 137

86 Note: This method will not be able to initialize the DeviceModel enumeration, PresentationLanguage enumeration, or ScreenSettings structure if a

Page 138

87 Parameters • [int] presentationId: The identifier and primary key of the Presentation instance to be retrieved. • [bool] loadContent: A flag sp

Comments to this Manuals

No comments