PTTClient Class
					
					| name | type | attributes | description | 
|---|
					| SDKVersion | string | readonly | SDK version information. "1.0.0" | 
					| appVersion | string |  | App version information. | 
					| deviceModelName | string |  | Device Model information.(Windows, Linux only) | 
					| AudioInDevice | string |  | Audio-in Device. (Linux only), Default is "plug:dsnoop" | 
					
					| AudioOutDevice | string |  | Audio-out Device. (Linux only), Default is "plug:dmix" | 
					| micType | int |  | 10:Default, 20:VOIP Mic (Android only), VOIP Mic could be used for only testing. | 
					| playMode | int |  | 10: VOIP, 20:MP3, default 10 (Android only) | 
					| playVolume | int |  | 0~100, default 100 | 
					| micAmplification | int |  | 0~100, default 0 | 
					| playAmplification | int |  | 0~100, default 0 | 
					| inputDenoiserEnabled | boolean |  | 0 : off, 1 : on, default 0 | 
					| outputDenoiserEnabled | boolean |  | 0 : off, 1 : on, default 0 | 
					| inputLPFEnabled | boolean |  | 0 : off, 1 : on, default 0 | 
					| inputLPFCutoff | int |  | 0~4000, default 1000 | 
					| outputLPFEnabled | boolean |  | 0 : off, 1 : on, default 0 | 
					| outputLPFCutoff | int |  | 0~4000, default 1000 | 
					| outputSpeakerAutoOffEnabled | int |  | 0 : off, 1 : on, default 0 (Android only) | 
					| accountName | string | readonly | User account name. After OnConnected, this is possible. | 
					| locationEnabled | boolean | readonly | Use location servie | 
					| useLocation | boolean |  | Whether to use location | 
					| multicastEnabled | boolean |  | Use multicast transport. default : false | 
					| voxEnabled | boolean |  | Use VOX. This is depended on PTTClient's VoxSensitivity. default : false | 
					| voxSensitivity | int |  | vox sensitivity ( 0 ~ 100 ), default 0(Auto) | 
					| bluetoothStatus | int | readonly | 0: Unavailable, 10:Available, 20:Headset Enabled, 23:Button Enabled, 29:Headset+Button Enabled | 
					| pushToTalkButtonType | int |  | 0 : Press And Hold, 1 : Toggle | 
					| bluetoothButtonType | int |  | 0 : Auto Connect. 1 : CODA Wheel/CODA Click, 2 : SHP-612, 3 : Blu-PTT, 4 : R2Gear, 5 : PTT-U1/U2/U3, 6 : Ahead_1122 iOS support: 0/1/3/4/5/6, Android support: 0/1/2
 | 
					| bluetoothButtonName | string |  | Bluetooth button name. No implemented | 
					| bluetoothButtonID | string |  | Bluetooth button ID to be found. No implemented | 
					| language | string |  | ISO 639-1 alpha-2 | 
					| passwordToken | string | readonly | Password policy token value receviced from server 0: First, Reserved
 1~2: Minimum length. (dd)
 3~4: PasswordWrongCount. (dd)
 7: Password reset is required. 0:No required, 1: Required
 8: Catcha is required. 0:No required, 1: Required
 9: Online login is required. 0:No required, 1: Required
 11: Minimum upper case count.
 12: Minimum lower case count.
 13: Minimum alpha case count.
 14: Minimum number count.
 15: Minimum symbol count.
 16: Maximum repeated character count.
 17: Maximum repeated qwerty character count.
 18: Maximum repeated same character count.
 20: ID can be included. 0:false, 1: true
 21: "password" can be included. 0:false, 1: true
 30: Password custom code.  Password Custom definition
 31: Last, Reserved
 | 
					| sessionKey | string | readonly | session value receviced from server(server 6.1.2~, SDK 4.1.x~) "": No session key is required
 "required": User have to put the authentication token
 "value": It must be used at SecondAuthKey of connect
 | 
					| speakerStatus | boolean | readonly | 0 : off, 1 : on | 
					| micToSpeakerEnabled | boolean |  | 0 : off, 1 : on (Android only) | 
					| TCPOnlyEnabled | boolean |  | 0 : off, 1 : on, it is only applyed at connect | 
					| locationSensitivity | int |  | 0 : High 1 : Medium 2 : Low, (Android only) | 
					| autoLocationSendingEnabled | boolean |  | 0 : off, 1 : on, (Android only) | 
					| videoHWRenderingEnabled | boolean |  | 0 : off, 1 : on, (Windows only) | 
					| HDAudioEnabled | boolean |  | 0 : off, 1 : on, (Android, iOS only, SDK 4.2.x~) | 
					
					
					
					| Methods | 
|---|
					| 
int initialize(string LicenseKey)void uninitialize()int connect(boolean UseSSL, string UserID, string Password, string SecondAuthKey, int LastNewsID, int LastOTACustomID, int LastDeviceCustomID, string pushToken, PTTClientEvent* EventHandler)int connect(string ServerIP, int ServerPort, boolean UseSSL, string UserID, string Password, string SecondAuthKey, int LastNewsID, int LastOTACustomID, int LastDeviceCustomID, string pushToken, PTTClientEvent* EventHandler)int connect(boolean UseSSL, string UserID, string Password, string PlainPassword, string SecondAuthKey, int LastNewsID, int LastOTACustomID, int LastDeviceCustomID, string pushToken, PTTClientEvent* EventHandler)int connect(string ServerIP, int ServerPort, boolean UseSSL, string UserID, string Password, string PlainPassword, string SecondAuthKey, int LastNewsID, int LastOTACustomID, int LastDeviceCustomID, string pushToken, PTTClientEvent* EventHandler)int disconnect(boolean Logout)int updateProfile(string ProfileAttributesJson)int getProfile(string UserID)int searchProfile(string Keyword)int updateProvision(string ProvisionAttributesJson)int updatePresence(string PresenceAttributesJson)int updatePhoto(int PhotoType, int PhotoDataLength, byte[] PhotoDataBuffer)int getBuddyPhoto(string UserID)int getChannels()int getChannelInfo(int ChannelID)int searchChannel(string Keyword, string Code)int getMembers()int getGroups()int getBuddies()int getOrganization()int getChildOrganizationsUsers(int organizationID)int getUsers()int getUsers(int OrganizationID)int createPTTChannel(string ChannelAttributesJson)int subscribePTTChannel(int ChannelID)int openPTTChannel(int ChannelID, PTTChannelEvent EventHandler)int closePTTChannel(PTTChannel PTTChannelInstance)int openGroup(int GroupID, GroupEvent EventHandler)int closeGroup(Group GroupInstance)int getNotices(int NewsID, int Count)int awakeUser(string UserID)int awakeUser(int ChannelID, string UserID)int setActive(boolean IsActive)int setSpeakerPhone(boolean Enable)string getCameraList()int setCamera(string CameraName)string getMicList()int setMic(string MicName)string getSpeakerList()int setSpeaker(string SpeakerName)int enableBluetooth(type DeviceType)int disableBluetooth(type DeviceType)int setBluetoothMode(int Mode)int getBluetoothMode()int startTestVox()int stopTestVox()VideoChannel openVideoAnnouncerChannel(VideoChannelEvent EventHandler)VideoChannel openVideoPlayerChannel(int VideoChannelID, VideoChannelEvent EventHandler)int closeVideoChanne(VideoChannel VideoChannelInstance)FileChannel openFileSenderChannel(FileChannelEvent EventHandler)FileChannel openFileReceiverChannel(int FileChannelID, string FileName, long64 FileSize, FileChannelEvent EventHandler)int closeFileChannel(FileChannel FileChannelInstance)int sendPrivateMessage(string ReceiverID, string Message)int sendPrivateCustomMessage(string ReceiverID, byte[] DataBuffer, int DataLength)int sendMessageToServerPlugin(string message)void setLocationManager(ILocationManager LocationManager)int sendLocationToServer()void enableLogging(boolean Net)Location getMyLocation() | 
					
					
					
					| Events | 
|---|
					| 
void onError(int ErrorCode, string ErrorMesssage)void onResult(int Seq, int ResultCode, string ResultMesssage)void onProvisioned(string InitialJson)void onConnected()void onSetup()void onDisconnected(int Reason)void onProfileUpdated(string ProfileAttributesJson)void onProfile(string ProfileAttributeJson)void onProfileSearched(string ProfilesJson)void onProvisionUpdated(string ProvisionAttributeJson)void onPresenceUpdated(string PresenceAttributesJson)void onPhotoUpdated(int PhotoChangeNumber)void onBuddyPhotoReceived(string UserID, int PhotoType, int PhotoDataLength, byte[] PhotoDataBuffer)void onBuddyPhotoReceived(string UserID, string PhotoURL)void onChannelCreated(int ChannelID)void onChannelUpdated(string ChannelAttributesJson)void onChannelDeleted(int ChannelID)void onChannelOpened(PTTChannel PTTChannelInstance)void onChannels(string ChannelsJson)void onChannel(string ChannelAttributesJson)void onChannelSearched(string ChannelsJson)void onMembers(string MembersJson)void onGroupCreated(Group GroupInstance)void onGroups(string GroupsJson)void onResponseBuddies(string BuddiesJson)void onOrganizations(string OrganizationsJson)void onChildOrganizationsUsers(String childOrganizationsUsersJson)void onUsers(string UsersJson)void onBuddyRequested(int GroupID, string RequesterID, string RequesterName)void onBuddyAccepted(int GroupID, string UserID, string buddyInfoJson)void onBuddyDenied(int ChannelID, string UserID)void onSubscribeRequested(int ChannelID, string MemberID, string MemberName)void onSubscribeAccepted(int ChannelID, string MemberID, string MemberName)void onSubscribeDenied(int ChannelID, string MemberID)void onUnsubscribed(int ChannelID, string MemberID, string OwnerID)void onSubscribeCanceled(int ChannelID, string MemberID)void onInviteRequested(int ChannelID, string channelName, string RequesterID, string RequesterName, string ReceiverID, string ReceiverName)void onInvitedAccepted(int ChannelID, string SenderID, string ReceiverID, string ReceiverName)void onInvitedDenied(int ChannelID, string RequesterID, string ReceiverID, string ReceiverName)void onInvitedCanceled(int ChannelID, string ReceiverID)void onNotices(string NoticesJson)void onAwakeUser(string UserID)void onAwakeChannelUser(int ChannelID, string UserID)void onBluetoothStatusChanged(int BluetoothStatus)void onVoxDataCaptured(byte[] TrackDataBuffer, int DataLength, unsigned int Timestamp)void onPrivateMessageReceived(string SenderID, string SenderName, string Message)void onPrivateCustomMessageReceived(string SenderID, string SenderName, byte[] DataBuffer, int DataLength)void onPrivateMessageReceivedFromServerPlugin(string Message)void onPublicMessageReceivedFromServerPlugin(string Message)void onSysCommandReceived(int CMD, string Param1, string ParamsJson)void onLatency(int Milisecons)void onLogingMessage(string Type, string Message)void onPreviousChannel()void onNextChannel()void onSOS()void onMyLocationChanged(Location location) | 
					
					
					Methods
					initialize
					
					| int initialize(string LicenseKey) | 
					| LicenseKey | LicenseKey. It can be generated at https://dev.proptt2.com/account-licenses.php | 
|---|
					| Return | 0: Possible ID, 0<Fail | 
|---|
					| Description | Initialize PTTClient | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					| Sample | Initialize("S0000000-C7A378675F4D002E887191FB22DF65EC-81B195BB"); | 
|---|
					
					
					uninitialize
					
					| void uninitialize() | 
					| Description | Uninitialize PTTClient | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					| Sample | Uninitialize(); | 
|---|
					
					
					connect
					
					| int connect(boolean UseSSL, string UserID, string Password, string SecondAuthKey, int LastNewsID, int LastOTACustomID, int LastDeviceCustomID, string PushToken, PTTClientEvent* EventHandler) int connect(string ServerIP, int ServerPort, boolean UseSSL, string UserID, string Password, string SecondAuthKey, int LastNewsID, int LastOTACustomID, int LastDeviceCustomID, string PushToken, PTTClientEvent* EventHandler)
 int connect(boolean UseSSL, string UserID, string Password, string Passwordd, string PlainPassword, string SecondAuthKey, int LastNewsID, int LastOTACustomID, int LastDeviceCustomID, string PushToken, PTTClientEvent* EventHandler)
 int connect(string ServerIP, int ServerPort, boolean UseSSL, string UserID, string Password, string PlainPassword, string SecondAuthKey, int LastNewsID, int LastOTACustomID, int LastDeviceCustomID, string PushToken, PTTClientEvent* EventHandler)
 | 
					| ServerIP | ProPTT2 server's IP | 
|---|
					| ServerPort | ProPTT2 server's port. It must be 8080 or 8088. if UseSSL is true, it is 8080, else 8088 | 
|---|
					| UseSSL | IMPTT server's SSL option. default TRUE | 
|---|
					| UserID | User ID | 
|---|
					| Password | Sha512(User's password) | 
|---|
					| PlainPassword | User's password. It is just an  option. (SDK 4.1~) | 
|---|
					| SecondAuthKey | If "", no used. ex IMEI or Phone number. | 
|---|
					| LastNewsID | Client's last News ID, default is 0. | 
|---|
					| LastOTACustomID | Client's last OTACustom ID, default is 0. | 
|---|
					| LastDeviceCustomID | Client's last DeviceCustom ID, default is 0. (Server 5.x~) | 
|---|
					| PushToken | Push Token in App(iOS, Android). Windows is "". | 
|---|
					| EventHandler | Event Handler to receive events | 
|---|
					| Return | Android/iOS - 0:Call Success, 0<ErrorCode PC/Linux - 200:Call Success or Result Code
 | 
|---|
					| Expected Events | onProvisioned()->onConnected()->onSetup()->onChannels->onMembers()->onGroups()->onBuddies()->onPresenceUpdated()->onPresenceUpdated() | 
|---|
					| Description | Connect to ProPTT2 server system | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					
					disconnect
					
					| int disconnect(boolean Logout) | 
					| Logout | if true, the login session will be logged out. | 
|---|
					| Return | 0:Call Success, 0<ErrorCode | 
|---|
					| Expected Events | onDisconnected() | 
|---|
					| Description | Disconnect from ProPTT2 server system | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					
					updateProfile
					
					| int updateProfile(string ProfileAttributesJson) | 
					| ProfileAttributesJson | Profile's Attributes. | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode | 
|---|
					| Expected Events | onProfileUpdated | 
|---|
					| Description | Update user's profile attributes | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					< ProfileAttributesJson > 
					
					| field | type | Description | Default | C | R | U | D | 
|---|
					| UserID | string | User's ID |  | M | M |  |  | 
					| Name | string | User's name |  | M | M | O |  | 
					| Password | string | Sha512(password). It is for just update. |  | M |  | O |  | 
					| Type | string | 'N'ormal, 'A'sp, 'P'ackage |  | M | O |  |  | 
					| Email | string | User's email |  | M | O | O |  | 
					| ExpireDate | string | Paid datetime |  |  | O |  |  | 
					| PhoneNumber | string | ex)821012341234 |  | O | O | O |  | 
					| Nickname | string | URLEncode(User’s Nickname) (MAX 255char). |  | O | M | O |  | 
					| StatusText | stirng | URLEncode(User’s StatusText) (MAX 255char) |  |  | M | O |  | 
					| VAS | stirng | User's Option of the Value-Added Service set to a digits of string
 if value is "1", the option is enabled. otherwise disabled. if empty is all enable.
 (0:AwakeUser, 1: InviteUser, 2: SubscribeChannel, 3: AddBuddy, 4:VideoPTT, 5: AwakeChannel)
 |  |  | O | O |  | 
					| Visible | int | Whether to allow for searching by another user |  |  | O | O |  | 
					| Language | string | ISO 639-1 alpha-2 |  | O | O | O |  | 
					
					
					getProfile
					
					| int getProfile(string UserID) | 
					| UserID | User ID | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode | 
|---|
					| Expected Events | onProfile() | 
|---|
					| Description | get user's profile | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					
					searchProfile
					
					| int searchProfile(string Keyword) | 
					| Keyword | Search keyword, "" is not possible. | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode | 
|---|
					| Expected Events | onProfileSearched() | 
|---|
					| Description | Search profiles by keyword. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					
					updateProvision
					
					| int updateProvision(string ProvisionAttributesJson) | 
					| ProvisionAttributesJson | Provision's attributes | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode | 
|---|
					| Description | Update user's provision | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					< ProvisionAttributesJson > 
					
					| field | type | Description | Default | C | R | U | D | 
|---|
					| EnableVideoPTT | boolean | Use video on PTT |  |  | O | O |  | 
					| EnableHDAudioPTT | boolean | Use HD audio on PTT |  |  | O | O |  | 
					
					
					updatePresence
					
					| int updatePresonce(string PresenceAttributesJson) | 
					| PresenceAttributesJson | Presence's attributes | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode | 
|---|
					| Expected Events | onUpdatePresence() | 
|---|
					| Description | Update user's presence | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					< PresencenAttributesJson > 
					
					| field | type | Description | Default | C | R | U | D | 
|---|
					| Status | int | 0:Offline,1:Online,2:Busy |  |  | O | O |  | 
					
										
					updatePhoto
					
					| int updatePhoto(int PhotoType, int PhotoDataLength, byte[] PhotoDataBuffer) int updatePhoto(string FilePath)
 | 
					| PhotoType | Photo Type (20: BMP, 31: JPEG, 32 PNG) | 
|---|
					| PhotoDataLength | Data size | 
|---|
					| PhotoDataBuffer | Buffer of data | 
|---|
					| FilePath | Path of photo | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | onPhotoUpdated | 
|---|
					| Description | Update own photo picture size should be less than 320 x 320
 | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					getBuddyPhoto
					
					| int getBuddyPhoto(string UserID) | 
					| UserID | User ID to get photo. | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | onBuddyPhotoReceived | 
|---|
					| Description | Request to get photo | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					getChannels
					
					| int getChannels() | 
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | onChannels | 
|---|
					| Description | Request channel list | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					getChannelInfo
					
					| int getChannelInfo(int ChannelID) | 
					| ChannelID | Channel's ID | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | onChannel | 
|---|
					| Description | Request channel info | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					searchChannel
					
					| int searchChannel(string Keyword, string Code) | 
					| Keyword | Search keyword, "" is not possible. | 
|---|
					| Code | Search Code, "" is not possible. | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | onChannelSearched | 
|---|
					| Description | Search channels by keyword or code. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					getMembers
					
					| int getMembers() int getMembers(int ChannelID)
 | 
					| ChannelID | Channel's ID to get members | 
|---|
  
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | onMembers | 
|---|
					| Description | Request members of channels | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					getGroups
					
					| int getGroups() | 
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | OnGroups()->onBuddies() | 
|---|
					| Description | Request BuddyGroups | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					getBuddies
					
					| int getBuddies() int getBuddies(int GroupID)
 | 
					| GroupID | Group's ID to get buddies | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | onBuddies() | 
|---|
					| Description | Request Buddy list | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					getOrganizations
					
					| int getOrganization() | 
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | onOrganizations | 
|---|
					| Description | Request organizations | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					getChildOrganizationsUsers
					
					| int getChildOrganizationsUsers(int organizationID) | 
| organizationIDs | parent organization ID | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | onChildOrganizationsUsers | 
|---|
					| Description | Request child organizations and users. (Server 5.x~) | 
|---|
					| Android SDK | 3.0.1 | 
|---|
					| iOS SDK | 3.0.1 | 
|---|
					| Windows SDK | 3.0.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					getUsers
					
					| int getUsers() int getUsers(int OrganizationID)
 | 
					| OrganizationID | Organization's ID to get users. | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | onUsers | 
|---|
					| Description | (*Depreciated) Request user list. * Server 5.x don't support getUsers, please use getChildOrganizationsUsers. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					createPTTChannel
					
					| int createPTTChannel(string ChannelAttributesJson) | 
					| ChannelAttributesJson | Channel's attributes | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | onChannelCreated | 
|---|
					| Description | Create PTTChannel This method is for only app srvice. You can not use it for server package and cloud service.
 Don't use it. System could be broken.
 | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					< ChannelAttributesJson > 
					
					| field | type | Description | Default | C | R | U | D | 
|---|
					| No | string | Channel number or code |  |  | M | O |  | 
					| ChannelName | string | URLEncode(Channel name) |  | M | M | O |  | 
					| ChannelType | string | 'G'roup,'1':1 |  | M | M |  |  | 
					| IsRecordable | boolean | Is Recordable | true | M | O | O |  | 
					| TOT | int | Channel’s TOT | 30 | M | O | O |  | 
					| IsOwner | boolean | Channel’s owner |  |  | O |  |  | 
					| IsEncrypted | boolean | Is Encrypted | false | O | O | O |  | 
					| ShareLocation | boolean | Is Shared Location | false |  | O |  |  | 
					| Description | string | URLEncode(Description |  | O | O | O |  | 
					| Notification | string | URLEncode(Notification) |  | O | O | O |  | 
					| Function | string | Function name |  |  | O |  |  | 
					| Status | int | Status joined the Channel |  |  |  |  |  | 
					
					subscribePTTChannel
					
					| int subscribePTTChannel(int ChannelID) int subscribe(int ChannelID, string InvitationCode)
 | 
					| ChannelID | Channel ID to subscribe | 
|---|
					| InvitationCode | If user is invited, user has the invitation code. | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events |  | 
|---|
					| Description | Subscribe to channel. This method is for only app srvice. You can not use it for server package and cloud service.
 Don't use it. System could be broken.
 | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					openPTTChannel
					
					| int openPTTChannel(int ChannelID, PTTChannelEvent EventHandler) | 
					| ChannelID | Channel ID to open | 
|---|
					| EventHandler | Event handler to receive events | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | onChannelOpened | 
|---|
					| Description | Open PTT channel instance | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					closePTTChannel
					
					| int closePTTChannel(PTTChannel PTTChannelInstance) | 
					| PTTChannelInstance | PTTChannel Instance to close | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Description | Close PTT channel instance | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					openGroup
					
					| int openGroup(int GroupID, GroupEvent EventHandler) | 
					| GroupID | Group's ID to open | 
|---|
					| EventHandler | Event handler to receive events | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | onGroupOpened | 
|---|
					| Description | Open Buddy Group | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					closeGroup
					
					| int closeGroup(Group GroupInstance) | 
					| GroupInstance | Group instance to be closed | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Description | Close Group | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					getNotices
					
					| int getNotices(int NewsID, int Count) | 
					| NewsID | First Notice(News)'s ID to get | 
|---|
					| Count | Count to get | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events | onNotices | 
|---|
					| Description | Request Notice list | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					awakeUser
					
					| int awakeUser(string UserID) | 
					| UserID | User ID to receive notify | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events |  | 
|---|
					| Description | Request to send Awake notify | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					awakeChannelUser
					
					| int awakeUser(int ChannelID, string UserID) | 
					| ChannelID | Channel ID to request | 
|---|
					| UserID | User ID to receive notify | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Expected Events |  | 
|---|
					| Description | Request to send Awake notify to Channel User | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					
					setActive
					
					| int setActive(boolean IsActive) | 
					| IsActive | Is Active | 
|---|
					| Return | 0:Success, 0<ErrorCode | 
|---|
					| Expected Events |  | 
|---|
					| Description | set app staus. default active | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					setSpeakerPhone
					
					| int setSpeakerPhone(boolean Enable) | 
					| Enable | Use speaker phone | 
|---|
					| Return | 0:Success, 0<ErrorCode | 
|---|
					| Description | Use speaker phone. default false | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | Not supported yet | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					getCameraList
					
					| string getCameraList() | 
					| Return | camera list seperated by ',' | 
|---|
					| Expected Events |  | 
|---|
					| Description | get camera list | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					setCamera
					
					| int setCamera(string CameraName) | 
					| CameraName | Camera Name to be used | 
|---|
					| Return | 0:Success, 0<ErrorCode | 
|---|
					| Expected Events |  | 
|---|
					| Description | Use camera. default face camera | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					| Sample(Android) | private boolean isCameraFront = false;
cameraList = client.getCameraList();
list = cameraList.split(","); 
if(list.length == 1) {
    client.setCamera(list[0]);
} else if(list.length > 0) {
    if (!isCameraFront) {
          client.setCamera(list[0]);
    } else {
          client.setCamera(list[1]);
    }
}
 | 
|---|
					
					getMicList
					
					| string getMicList() | 
					| Return | Mic list seperated by ',' | 
|---|
					| Expected Events |  | 
|---|
					| Description | get Mic list | 
|---|
					| Android SDK | Not supported | 
|---|
					| iOS SDK | Not supported | 
|---|
					| Windows SDK | 4.0.0 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					setMic
					
					| int setMic(string MicName) | 
					| MicName | Mic Name to be used | 
|---|
					| Return | 0:Success, 0<ErrorCode | 
|---|
					| Expected Events |  | 
|---|
					| Description | Use Mic. default system Mic | 
|---|
					| Android SDK | Not supported | 
|---|
					| iOS SDK | Not supported | 
|---|
					| Windows SDK | 4.0.0 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					getSpeakerList
					
					| string getSpeakerList() | 
					| Return | Speaker list seperated by ',' | 
|---|
					| Expected Events |  | 
|---|
					| Description | get Speaker list | 
|---|
					| Android SDK | Not supported | 
|---|
					| iOS SDK | Not supported | 
|---|
					| Windows SDK | 4.0.0 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					setSpeaker
					
					| int setSpeaker(string SpeakerName) | 
					| SpeakerName | Speaker Name to be used | 
|---|
					| Return | 0:Success, 0<ErrorCode | 
|---|
					| Expected Events |  | 
|---|
					| Description | Use Speaker. default System Speaker | 
|---|
					| Android SDK | Not supported | 
|---|
					| iOS SDK | Not supported | 
|---|
					| Windows SDK | 4.0.0 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					enableBluetooth
					
					| int enableBluetooth(type DeviceType) | 
					| DeviceType | Android, IOS : int 20:Headset, 23:Button, 29:Headset+Button
 
 Windows : string, bluetooth Port Name
 | 
|---|
					| Return | 0:Success, 0<ErrorCode | 
|---|
					| Expected Events | onBluetoothStatusChanged | 
|---|
					| Description | Use bluetooth device | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					disableBluetooth
					
					| int disableBluetooth(type DeviceType) | 
					| DeviceType | Android, IOS : int 20:Headset, 23:Button, 29:Headset+Button
 
 Windows : string, bluetooth Port Name
 | 
|---|
					| Return | 0:Success, 0<ErrorCode | 
|---|
					| Expected Events | onBluetoothStatusChanged | 
|---|
					| Description | Disable bluetooth device | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					setBluetoothMode
					
					| int setBluetoothMode(int Mode) | 
					| Mode | 0 : None (default) 10 : Battery Save Mode
 | 
|---|
					| Return | 0:Success, 0<ErrorCode | 
|---|
					| Expected Events |  | 
|---|
					| Description | Change Bluetooth Mode 
 default 0 mode always works bluetooth Headset
 if you enableBluetooth "Heaset" or "Headset + Button"
 
 If you set Battery Save Mode, Bluetooth Headset only works
 in channel Locked if you enableBluetooth "Heaset" or "Headset + Button"
 | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | Not supported | 
|---|
					| Windows SDK | Not supported | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					getBluetoothMode
					
					| int getBluetoothMode() | 
					| Return | 0:Success, 0<ErrorCode | 
|---|
					| Expected Events |  | 
|---|
					| Description | get current Bluetooth mode | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | Not supported | 
|---|
					| Windows SDK | Not supported | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					startTestVox
					
					| int startTestVox() | 
					| Return | 0:Success, 0<ErrorCode | 
|---|
					| Description | Use bluetooth device | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | Not implemented | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					stopTestVox
					
					| int stopTestVox() | 
					| Return | 0:Success, 0<ErrorCode | 
|---|
					| Expected Events |  | 
|---|
					| Description | Disable bluetooth device | 
|---|
 
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | Not implemented | 
|---|
					| Linux SDK | Not supported yet | 
|---|
 
					
					openVideoAnnouncerChannel
					
					| VideoChannel openVideoAnnouncerChannel(VideoChannelEvent EventHandler) | 
					| EventHandler | Event handler to receive events | 
|---|
					| Return | Opened Video Channel's Instance | 
|---|
					| Expected Events |  | 
|---|
					| Description | Open Video channel instance for announcer | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
 
					
					openVideoPlayerChannel
					
					| VideoChannel openVideoPlayerChannel(int VideoChannelID, VideoChannelEvent EventHandler) | 
					| VideoChannelID | Video Channel's ID to join | 
|---|
					| EventHandler | Event handler to receive events | 
|---|
					| Return | Opened Video Channel's Instance | 
|---|
					| Expected Events |  | 
|---|
					| Description | Open Video channel instance to join | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					closeVideoChannel
					
					| int closeVideoChannel(VideoChannel VideoChannelInstance) | 
					| VideoChannelInstance | Video Channel Instance to close | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
 
					| Expected Events |  | 
|---|
					| Description | Close Video channel instance | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					openFileSenderChannel
					
					| FileChannel openFileSenderChannel(FileChannelEvent EventHandler) | 
					| EventHandler | Event handler to receive events | 
|---|
					| Return | Opened File Channel's Instance | 
|---|
					| Expected Events |  | 
|---|
					| Description | Open File channel instance for sender | 
|---|
					| Server version | 6.0.0~ | 
|---|
					| Android SDK | 4.0.0 | 
|---|
					| iOS SDK | 4.0.0 | 
|---|
					| Windows SDK | 4.0.0 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
 
					
					openFileReceiverChannel
					
					| FileChannel openFileReceiverChannel(int FileChannelID, string FileName, long64 FileSize, VideoChannelEvent EventHandler) | 
					| FileChannelID | File Channel's ID to join | 
|---|
					| FileName | File name to recieve | 
|---|
					| FileSize | File size to recieve | 
|---|
					| EventHandler | Event handler to receive events | 
|---|
					| Return | Opened File Channel's Instance | 
|---|
					| Expected Events |  | 
|---|
					| Description | Open File channel instance to join | 
|---|
					| Server version | 6.0.0~ | 
|---|
					| Android SDK | 4.0.0 | 
|---|
					| iOS SDK | 4.0.0 | 
|---|
					| Windows SDK | 4.0.0 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					closeFileChannel
					
					| int closeFileChannel(FileChannel FileChannelInstance) | 
					| FileChannelInstance | File Channel Instance to close | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
 
					| Expected Events |  | 
|---|
					| Description | Close File channel instance | 
|---|
					| Server version | 6.0.0~ | 
|---|
					| Android SDK | 4.0.0 | 
|---|
					| iOS SDK | 4.0.0 | 
|---|
					| Windows SDK | 4.0.0 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					sendPrivateMessage
					
					| int sendPrivateMessage(string ReceiverID, string Message) | 
					| ReceiverID | Receiver ID to be received a message. | 
|---|
					| Message | Max 200 characters | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
 
					| Expected Events |  | 
|---|
					| Description | Send Message to Receiver | 
|---|
					| Server version | 1.2.x~ | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					sendPrivateCustomMessage
					
					| int sendPrivateCustomMessage(string ReceiverID, byte[] DataBuffer, int DataLength) | 
					| ReceiverID | Receiver ID to be received a message. | 
|---|
					| DataBuffer | Buffer of data | 
|---|
					| DataLength | Data size ( Max 30k ) | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
 
					| Expected Events |  | 
|---|
					| Description | Send a CustomMessage to Receiver. | 
|---|
					| Server version | 1.2.x~ | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					sendMessageToServerPlugin
					
					| int sendMessageToServerPlugin(string message) | 
					| message | message to be sent | 
|---|
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
 
					| Expected Events |  | 
|---|
					| Description | Send a message to PTT plugin. | 
|---|
					| Server version | 6.0.0~ | 
|---|
					| Android SDK | 4.0.0 | 
|---|
					| iOS SDK | 4.0.0 | 
|---|
					| Windows SDK | 4.0.0 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					setLocationManager
					
					| void setLocationManager(ILocationManager LocationManager) | 
					| LocationManager | LocationManager instance. | 
|---|
					| Expected Events |  | 
|---|
					| Description | Can be use for external location device. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | Not supported | 
|---|
					| Windows SDK | 3.0.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					
					sendLocationToServer
					
					| int sendLocationToServer() | 
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
 
					| Expected Events |  | 
|---|
					| Description | Can be Send location information to server. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | Not supported | 
|---|
					| Windows SDK | 2.1.1 (C++ only) | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					
					enableLogging
					
					| void enableLogging(boolean Net) | 
					| Net | Net logging on/off | 
|---|
 
					| Expected Events |  | 
|---|
					| Description | Enable logging. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | Not supported | 
|---|
					| Windows SDK | Not implemented | 
|---|
					| Linux SDK | Not implemented | 
|---|
					
					
					getMyLocation
					
					| Location getMyLocation() | 
					| Description | Get current device's location. | 
|---|
					| Android SDK | 2.1.3 | 
|---|
					| iOS SDK | Not supported | 
|---|
					| Windows SDK | Not supported | 
|---|
					| Linux SDK | Not supported | 
|---|
					
					
					Events
					onError
					
					| void onError(int ErrorCode, string ErrorMesssage) | 
					| ErrorCode | Error code. see Main 6 | 
|---|
					| ErrorMesssage | Error message | 
|---|
					| Description | Errer event | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onResult
					
					| void onResult(int Seq, int ResultCode, string ResultMesssage) | 
					| Seq | Requested Sequence ID | 
|---|
					| ResultCode | Error code. see Main 7 | 
|---|
					| ResultMesssage | Error message | 
|---|
					| Description | Result event for request | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onProvisioned
					
					| void onProvisioned(string InitialJson) | 
					| InitialJson |  | 
|---|
					| Description | Connected to server. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					< InitialJson > 
					
					| field | type | Description | Default | 
|---|
					| UserDBID | int | User's ID in DB. |  | 
     
					| UserName | string | User's name. |  | 
     
					| UserEmail | string | User's email |  | 
					| UserType | int | User's type |  | 
					| NationCode | string | User's nation |  | 
					| ServerVersion | string | Server's version |  | 
     
					| ExpireTime | string | Expire Time(GMT0) , ex) 2015-05-21 20:10:12 | Unlimit | 
					| NewsCount | int | Notification count after LastNotificationID |  | 
     
					| LastAppVersion | string | Last App version |  | 
     
					| RecommendAppVersion | string | Recommended App version |  | 
     
					| MinAppVersion | string | Minimum App version | 1.0.0 | 
 
					| UpgradeURL | string | URLEncoded(URL) "store" : app store
 URL : visit web
 | store | 
					| EnableVideoSharing | boolean | enable video sharing | false | 
					| EnableDispatching | boolean | enable dispatching service for Dispatcher | false | 
					| EnableHDAudio | boolean | enable HD quality audio | false | 
					| EnableMicroAudio | boolean | enable MicroNB quality audio | false | 
					| EnableAllUserMap | boolean | enable map of all users for dispatcher | false | 
					| EnableLocationDevice | boolean | enable location device(Android only) | false | 
					| RequiredLocation | boolean | enable location sending | false | 
					| LockSetup | string | Unlock password for defaulr menu lock | "" | 
					| FAQURL | string | URL : visit web | PC: https://www.proptt2.com/xx/faq.htm smart device https://www.proptt2.com/xx/mfaq.htm
 xx means language code. ex) 'en', 'ko', 'zh'
 | 
   
					| Homepage | string | URL : visit web | www.proptt.com | 
    
					| LogoID | int | If it is not 0 and not same with local LogoID, must download it | ProPTT logo | 
  
					| LogoURL | string | ProPTT logo's URL(UrlEncoded) | 
  
					| ProvisionToken | string(64) | User's permission value * This is below.
 |  | 
  
					| LastOTACustomID | int | Last OTACustom ID |  | 
  
					| LastOTACustomContent | string | URLEncoded(content), Last OTA custom content |  | 
  
					| LastDeviceCustomID | int | Last DeviceCustom ID |  | 
  
					| LastDeviceCustomContent | string | URLEncoded(content), Last Device custom content |  | 
  
					| ExtMenu | string | Extended menu for app |  | 
  
					
< ProvisionToken > 
< PTT >
0: First index, reserved
2: VideoPTT, 0:Disable(Receiving available), 1:Sending/Receiving available(Receiver can only receive)
3: 1:1PTT, 0:Disable(Receiving available), 1:Sending/Receiving available
4: MasterPTT: 1:Disable(Receiving available),2:Sending/Receiving available(Owner/Dispatcher can send it)
< VideoShare >
10: VideoShare, 0:Disable, 2:Receiving only, 3:Sending only,1:Sending/Receiving available
11: VideoRecord, 0:Disable, 1:Enable
30: VideoShareTOT, 0:Unlimited, 1:2min 2:5min, 3:10min, 4:20min, 5:30min, 6:1hour, 7:2hour, 8:6hour, 9:12hour 
< Chat >
20: UseChat, 0:Disable, 2:Receiving only,1:Sending/Receiving available
21: UsePicture, 0:Receiving only,1:Sending/Receiving available
22: UseLocationSending, 0:Receiving only,1:Sending/Receiving available
< Main >
26: Show locations: 0:Disable, 1:Enable
27: Use function: 0:Disable, 1:Enable
28: LockSetup: 1:Open, 2:Disable all, 3:2:Disable all(except Profile), 4:Default lock(Default menu only)
< Setup >
33: Use interception: 1:All available(Default OFF),3:All available(Default ON, Owner/Operator only possible)
34: AudioPTT Quality: 1:All available(Default Middle), 3:All available(Default High), 4:All available(Default Low), 8:All available(Default Highest), 9:All available(Default HD), a:All available(Default Full HD), 5:High only, 6:Middle only, 7:Low only, c:Highest only, d:HD only, e:Full HD only, g:MicroNB only
35: VideoPTT Quality: 1:All available(Default Low), 3:All available(Default High), 4:All available(Default Middle), 5:High only, 6:Middle only, 7:Low only
40: VideoShare Quality: 1:All available(Default Middle), 2:All available(Default Highest), 3:All available(Default High), 4:All available(Default Low), f:All available(Default MicroNB), 5:High only, 6:High only, 7:Middle only, 8:Low only
45: Record received PTT: 1:All available(Default ON),3:All available(Default OFF), 4:ON only, 5:Off only
46: Record sent PTT: 1:All available(Default OFF),3:All available(Default ON), 4:ON only, 5:Off only
47: Cycle PTT deletion: 1:Capacity, 2:1Hour, 3:2Hour, 4:6Hour, 5:12Hour, 6:1일, 7:1Hour only, 8:6Hour only, 9:1Day only, a:10count, b:20count, c:50count, d:100count, e:200count, f:10count only, g:20count only, h:50count only, i:100count only, j:200count only
50: Use location: 1:All available(Default ON),3:All available(Default OFF), 4:Enable only, 5:Disable only
51: Location sensitivity: 1:All available(Default Middle), 3:All available(Default High), 4:All available(Default Low), 5:High only, 6:Middle only, 7:Low only
52: Location interval: 1:All available(System Default), 3:All available(30second), 4:All available(15second), 5:Default  only, 6:30second only, 7:15second only
55: Emergency detection: 1:All available(Default OFF),3:All available(Default ON)
56: Use man-down: 1:All available(Default OFF),3:All available(Default ON)
63: Last index, reserved
* if ProvisionToken's length is not 64, default must be "1111111111111111111111111111110011111111111111111111111111111100"
					onConnected
					
					| void onConnected() | 
					| Description | Connected to server. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onSetup
					
					| void onSetup() | 
					| Description | setup to server. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onDisconnected
					
					| void onDisconnected(int Reason) | 
					| Reason | Whether the session log out. 0: Network Error
 1: Log-out
 2: Duplicate Log-in
 3: Upgrade
 4: Invalid License
 5: Invalid Account
 6: Disconnected By User
 7: Precondition failure. Must check the sessionKey and password token to find the reason. The sessionKey would be first.
 | 
|---|
					| Description | Disconnected to server. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onProfileUpdated
					
					| void onProfileUpdated(string ProfileAttributesJson) | 
					| ProfileAttributesJson | Updated attributes | 
|---|
					| Description | Profile is updated. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onProfile
					
					| void onProfile(string ProfileAttributeJson) | 
					| ProfileAttributeJson | Profile attributes | 
|---|
					| Description | Response of GetProfile. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onProfileSearched
					
					| void onProfileSearched(string ProfilesJson) | 
					| ProfilesJson | Profile list | 
|---|
					| Description | Response of SearchProfile. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					< ProfilesJson > 
					
					| field | type | Description | Default | R | 
|---|
					| Profile | string |  |  | O | 
					| ProfileAttributes | string | ProfileAttributesJson |  | M | 
					
					onProvisionUpdated
					
					| void onProvisionUpdated(string ProvisionAttributeJson) | 
					| ProvisionAttributeJson | Updated attributes | 
|---|
					| Description | Provision is updated. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onPresenceUpdated
					
					| void onPresenceUpdated(string PresenceAttributesJson) | 
					| PresenceAttributesJson | Attributes | 
|---|
					| Description | Presence is updated | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onPhotoUpdated
					
					| void onPhotoUpdated(int PhotoChangeNumber) | 
					| PhotoChangeNumber | Photo's change number | 
|---|
					| Description | Photo is updated | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onBuddyPhotoReceived
					
					| void onBuddyPhotoReceived(string UserID, int PhotoType, int PhotoDataLength, byte[] PhotoDataBuffer) void onBuddyPhotoReceived(string UserID, string PhotoURL)
 | 
					| UserID | User ID of photo | 
|---|
					| PhotoType | Photo Type (20: BMP, 31: JPEG, 32 PNG) | 
|---|
					| PhotoDataLength | Data size | 
|---|
					| PhotoDataBuffer | Buffer of data | 
|---|
					| PhotoURL | URL to receive photo | 
|---|
					| Description | Response of GetBuddyPhoto | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onChannelCreated
					
					| void onChannelCreated(int ChannelID) | 
					| ChannelID | Created Channel's ID | 
|---|
					| Description | PTTChannel is created. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onChannelUpdated
					
					| void onChannelUpdated(string ChannelAttributesJson) | 
					| ChannelAttributesJson | Attributes | 
|---|
					| Description | PTTChannel is updated by owner. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onChannelDeleted
					
					| void onChannelDeleted(int ChannelID) | 
					| ChannelID | Deleted Channel's ID | 
|---|
					| Description | PTTChannel is deleted. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onChannelOpened
					
					| void onChannelOpened(PTTChannel PTTChannelInstance) | 
					| PTTChannelInstance | Opened Channel's Instance | 
|---|
					| Description | PTTChannel Instance is opened. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onChannels
					
					| void onChannels(string ChannelsJson) | 
					| ChannelsJson |  | 
|---|
					| Description | Response of GetChannels | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					< ChannelsJson > 
					
					| field | type | Description | Default | R | 
|---|
					| Channel | string |  |  | O | 
					| ChannelAttributes | string | ChannelAttributesJson |  | M | 
					
					onChannel
					
					| void onChannel(string ChannelAttributesJson) | 
					| ChannelAttributesJson |  | 
|---|
					| Description | Response of GetChannelInfo | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onChannelSearched
					
					| void onChannelSearched(string ChannelsJson) | 
					| ChannelsJson | Channel list | 
|---|
					| Description | Response of SearchChannel. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onMembers
					
					| void onMembers(string MembersJson) | 
					| MembersJson | result(Json) | 
|---|
					| Description | Response of GetMembers | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					< MembersJson > 
					
					| field | type | Description | Default | R | 
|---|
					| Member |  |  |  | O | 
					| UserID | string | Member’s ID |  | M | 
					| Name | string | URLEncode(Member’s name) |  | M | 
					| JoinedChannel |  |  |  | O | 
					| ChannelID | string | Joined Channel ID |  | M | 
					| ChannelRole | string | Member Role, 10:Normal(default), 20:Receiver, 90:Operator, SDK 2.1.2 |  | O | 
					| WaitedChannel |  |  |  | O | 
					| ChannelID | string | Waited ChannelLID |  | M | 
					| InvitorID | string |  |  | M | 
					| InvitorName | string |  |  | M | 
					
   
					onGroupOpened
					
					| void onGroupCreated(Group GroupInstance) | 
					| GroupInstance | Opened Group's Instance | 
|---|
					| Description | Group Instance is opened. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onGroups
					
					| void onGroups(string GroupsJson) | 
					| GroupsJson |  | 
|---|
					| Description | Response of GetGroups | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					< GroupsJson > 
					
					| field | type | Description | Default | R | 
|---|
					| Group |  |  |  | O | 
					| ID | int | Group’s ID |  | M | 
					| Name | string | URLEncode(Group's Name) |  | M | 
 
					| Type | int | 0:Normal |  | M | 
					
					onBuddies
					
					| void onResponseBuddies(string BuddiesJson) | 
					| BuddiesJson | result(Json) | 
|---|
					| Description | Response of GetBuddies | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					< BuddiesJson > 
					
					| field | type | Description | Default | R | 
|---|
					| Buddy |  |  |  | O | 
					| UserID | string | Buddy ID |  | M | 
					| UserName | string | Buddy Name |  | M | 
					| GroupID | int | Group ID |  | M | 
					| Status | int | 10: registed, 20: requesting: 30: accepted |  |  | 
    
					
					onOrganizations
					
					| void onOrganizations(string OrganizationsJson) | 
					| OrganizationsJson |  | 
|---|
					| Description | Response of GetOrganizations | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					< OrganizationJson > 
					
					| field | type | Description | Default | R | 
|---|
					| Organization |  |  |  | O | 
					| ID | int | Organization’s ID |  | M | 
					| Name | string | URLEncode(Organization's Name) |  | M | 
					| Type | int | 0:Normal |  | M | 
					
					
					onChildOrganizationsUsers
					
					| void onChildOrganizationsUsers(String childOrganizationsUsersJson) | 
					| Return | Request Sequence ID. If less then 0, ErrorCode. | 
|---|
					| Description | Request organizations | 
|---|
					| Android SDK | 3.0.1 | 
|---|
					| iOS SDK | 3.0.1 | 
|---|
					| Windows SDK | 3.0.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					< childOrganizationsUsersJson > 
					
					| field | type | Description | Default | R | 
|---|
					| Organization |  |  |  | O | 
					| ID | int | Organization’s ID |  | M | 
					| Name | string | URLEncode(Organization's Name) |  | M | 
					| Type | int | 0:Normal |  | M | 
					| User |  |  |  | O | 
					| UserLID | string | User's ID |  | M | 
					| UserName | string | URLEncode(User's Name) |  | M | 
					
					onUsers
					
					| void onUsers(string UsersJson) | 
					| UsersJson | result(Json) | 
|---|
					| Description | Response of GetUsers. * Server 5.x don't support this event, please use onChildOrganizationsUsers. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					< UsersJson > 
					
					| field | type | Description | Default | R | 
|---|
					| User |  |  |  | O | 
					| UserLID | string | User's ID |  | M | 
					| UserName | string | User's Name |  | M | 
					| IncludedGroups |  |  |  | O | 
					| OrganizationID | int | Organization’s ID |  | M | 
					
					onBuddyRequested
					
					| void onBuddyRequested(int GroupID, string RequesterID, string RequesterName) | 
					| GroupID | Group ID of event | 
|---|
					| RequesterID | User ID who have added me | 
|---|
					| RequesterName | User Name who have added me | 
|---|
					| Description | Response of GetUsers | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onBuddyAccepted
					
					| void onBuddyAccepted(int GroupID, string UserID, string buddyInfoJson) | 
					| GroupID | Group ID of event | 
|---|
					| UserID | Subscriber's ID | 
|---|
					| Description | Subscribed into a Buddy Group | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					
					< BuddyInfoJson > 
					
					| field | type | Description | Default | R | 
|---|
					| Nickname | string | URLEncode(Buddy Nickname) (MAX 255char) |  |  | 
					| StatusText | string | URLEncode(Buddy StatusText(MAX 255char). |  |  | 
					| PhotoChangeNumber | int | Server’s change number. |  |  | 
					
					onBuddyDenied
					
					| void onBuddyDenied(int ChannelID, string UserID) | 
					| GroupID | Group ID of event | 
|---|
					| UserID | Subscriber's ID | 
|---|
					| Description | User is joined into a Buddy Group | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onSubscribeRequested
					
					| void onSubscribeRequested(int ChannelID, string MemberID, string MemberName) | 
					| ChannelID | Channel ID of event | 
|---|
					| MemberID | Subscriber's ID | 
|---|
					| MemberName | Subscriber's Name | 
|---|
					| Description | Requested a subscription into a PTT channel. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onSubscribeAccepted
					
					| void onSubscribeAccepted(int ChannelID, string MemberID, string MemberName) | 
					| ChannelID | Channel ID of event | 
|---|
					| MemberID | Subscriber's ID | 
|---|
					| MemberName | Subscriber's Name | 
|---|
					| Description | Subscribed into a PTT channel | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onSubscribeDenied
					
					| void onSubscribeDenied(int ChannelID, string MemberID) | 
					| ChannelID | Channel ID of event | 
|---|
					| MemberID | Subscriber's ID | 
|---|
					| Description | User is joined into a PTT channel. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onUnsubscribed
					
					| void onUnsubscribed(int ChannelID, string MemberID, string OwnerID) | 
					| ChannelID | Channel ID of event | 
|---|
					| MemberID | Unsubscriber's ID | 
|---|
					| OwnerID | Channel owner's ID | 
|---|
					| Description | User is joined into a PTT channel. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onSubscribeCanceled
					
					| void onSubscribeCanceled(int ChannelID, string MemberID) | 
					| ChannelID | Channel ID of event | 
|---|
					| MemberID | Requester's ID for cancel | 
|---|
					| Description | Canceled to subscribe | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onInviteRequested
					
					| void onInviteRequested(int ChannelID, string channelName, string RequesterID, string RequesterName, string ReceiverID, string ReceiverName) | 
					| ChannelID | Channel ID of event | 
|---|
					| ChannelName | Channel Name | 
|---|
					| RequesterID | Requester ID | 
|---|
					| RequesterName | Requester Name | 
|---|
					| ReceiverID | Receiver ID | 
|---|
					| ReceiverName | Receiver Name | 
|---|
					| Description | Invited from another peer | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onInviteAccepted
					
					| void onInvitedAccepted(int ChannelID, string SenderID, string ReceiverID, string ReceiverName) | 
					| ChannelID | Channel ID of event | 
|---|
					| SenderID | Sender ID | 
|---|
					| ReceiverID | Receiver ID | 
|---|
					| ReceiverName | Receiver Name | 
|---|
					| Description | accepted to invite PTT channel | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onInviteDenied
					
					| void onInvitedDenied(int ChannelID, string RequesterID, string ReceiverID, string ReceiverName) | 
					| ChannelID | Channel ID of event | 
|---|
					| RequesterID | Requester ID | 
|---|
					| ReceiverID | Receiver ID | 
|---|
					| Description | denied to invite PTT channel | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onInviteCanceled
					
					| void onInvitedCanceled(int ChannelID, string ReceiverID) | 
					| ChannelID | Channel ID of event | 
|---|
					| ReceiverID | Receiver ID | 
|---|
					| Description | Canceled to invite | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onNotices
					
					| void onNotices(string NoticesJson) | 
					| ChannelsJson |  | 
|---|
					| Description | Response of GetNotices | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					< NoticesJson > 
					
					| field | type | Description | Default | R | 
|---|
					| Notice |  |  |  | O | 
					| Id | int | Notice ID |  | M | 
 
					| Title | string | Title of Notice |  | M | 
					| Content | string | Content of Notice |  | M | 
					| Type | int | 10: Normal |  | M | 
					| UpdateDate | string | Date to update Notice |  | M | 
					
					onAwakeUser
					
					| void onAwakeUser(string UserID) | 
					| UserID | User ID to receive notify | 
|---|
					| Description | Response of AwakeUser | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onAwakeChannelUser
					
					| void onAwakeChannelUser(int ChannelID, string UserID) | 
					| ChannelID | Channel ID of event | 
|---|
					| UserID | User ID to receive notify | 
|---|
					| Description | Response of AwakeChannelUser | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onBluetoothStatusChanged
					
					| void onBluetoothStatusChanged(int BluetoothStatus) | 
					| BluetoothStatus | 0: Unavailable, 10:Available, 20:Headset Enabled, 23:Button Enabled, 29:Headset+Button Enabled | 
|---|
					| Description | Bluetooth device's status is changed | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
 
					
					onVoxDataCaptured
					
					| void onVoxDataCaptured(byte[] TrackDataBuffer, int DataLength, unsigned int Timestamp) | 
					| TrackDataBuffer | Buffer of data | 
|---|
					| DataLength | Data size | 
|---|
					| Timestamp | Timestamp of data | 
|---|
					| Description | Vox data is captured from device. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | Not implemented | 
|---|
					| Linux SDK | Not implemented | 
|---|
					
					onPrivateMessageReceived
					
					| void onPrivateMessageReceived(string SenderID, string SenderName, string Message) | 
					| SenderID | Sender ID | 
|---|
					| SenderName | Sender Name | 
|---|
					| Message | Message | 
|---|
					| Description | A private message is received from sender. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					onPrivateCustomMessageReceived
					
					| void onPrivateCustomMessageReceived(string SenderID, string SenderName, byte[] DataBuffer, int DataLength) | 
					| SenderID | Sender ID | 
|---|
					| SenderName | Sender Name | 
|---|
					| DataBuffer | Buffer of data | 
|---|
					| DataLength | Data size | 
|---|
					| Description | Private custom message is received. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					onPrivateMessageReceivedFromServerPlugin
					
					| void onPrivateMessageReceivedFromServerPlugin(string Message) | 
					| Message | Data size | 
|---|
					| Description | A private message is received from PTT plugin. | 
|---|
					| Android SDK | 4.0.0 | 
|---|
					| iOS SDK | 4.0.0 | 
|---|
					| Windows SDK | 4.0.0 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					onPublicMessageReceivedFromServerPlugin
					
					| void onPublicMessageReceivedFromServerPlugin(string Message) | 
					| Message | Data size | 
|---|
					| Description | A public message is received from PTT plugin. | 
|---|
					| Android SDK | 4.0.0 | 
|---|
					| iOS SDK | 4.0.0 | 
|---|
					| Windows SDK | 4.0.0 | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					onSysCommandReceived
					
					| void onSysCommandReceived(int CMD, string Param1, string ParamsJson) | 
					| CMD | CMD | 
|---|
					| Param1 | Param1 | 
|---|
					| ParamsJson | ParamsJson | 
|---|
					| Description | System command message is received. | 
|---|
					| Android SDK | 3.0.1 | 
|---|
					| iOS SDK | 3.0.1 | 
|---|
					| Windows SDK | 3.0.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					onLatency
					
					| void onLatency(int MiliLatency) | 
					| MiliLatency | delayTime(miliseconds). It is round-trip time, you need to devide by 2. | 
|---|
					| Description | check result for Latency. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | 2.1.1 | 
|---|
					| Windows SDK | 2.1.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
					onLogingMessage
					
					| void onLogingMessage(String Type, String Message) | 
					| Type | "NET":Network, "PRT":Protocol | 
|---|
					| Message | a message to be write | 
|---|
					| Description | write log. | 
|---|
					| Android SDK | 2.1.1 | 
|---|
					| iOS SDK | Not supported | 
|---|
					| Windows SDK | Not implemented | 
|---|
					| Linux SDK | Not implemented | 
|---|
					
					onPreviousChannel
					
					| void onPreviousChannel() | 
					| Description | Fired a previous channel event. | 
|---|
					| Android SDK | 3.0.1 | 
|---|
					| iOS SDK | Not supported | 
|---|
					| Windows SDK | Not supported | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
					
					onNextChannel
					
					| void onNextChannel() | 
					| Description | Fired a next channel event. | 
|---|
					| Android SDK | 3.0.1 | 
|---|
					| iOS SDK | Not supported | 
|---|
					| Windows SDK | Not supported | 
|---|
					| Linux SDK | Not supported yet | 
|---|
					
							
					onSOS
					
					| void onSOS() | 
					| Description | Fired a SOS key event by Bluetooth. | 
|---|
					| Android SDK | 2.1.2 | 
|---|
					| iOS SDK | 3.0.1 | 
|---|
					| Windows SDK | 3.0.1 | 
|---|
					| Linux SDK | 3.0.1 | 
|---|
					
								
					onMyLocationChanged
					
					| void onMyLocationChanged(Location location) | 
					| location | My location | 
|---|
					| Description | Fired location event by GPS. | 
|---|
					| Android SDK | 3.0.1 | 
|---|
					| iOS SDK | Not supported | 
|---|
					| Windows SDK | Not supported | 
|---|
					| Linux SDK | Not supported yet | 
|---|