Top Banner
CONFIDENTIAL 0 BROWAN COMMUNICATIONS INCORPORTATION  April 22, 2016 www.browan.com FreePP Mobile SDK on iOS API Document version 1.0
41

API-iOS-English-150721.doc

Jul 06, 2018

Download

Documents

Nguyễn Thuỷ
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 1/41

CONFIDENTIAL

0

BROWAN COMMUNICATIONSINCORPORTATION

 April 22, 2016

www.browan.com

FreePP Mobile SDK on iOS

API Document

version 1.0

Page 2: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 2/41

Public

Table of Contents

Table of Contents..................................................................................................1

Chapter 1: Introduction...............................................................................................3

1.1 Purpose........................................................................................................3

1.2 Scope...........................................................................................................3

1.3 Overview......................................................................................................3

1.4 Definitions and Acronyms..............................................................................4

Chapter 2: Design Considerations................................................................................5

Chapter 3: Architecture................................................................................................8

3.1 Overview

......................................................................................................8

3.2 Modules.....................................................................................................10

3.2.1 Basic Function Modules.....................................................................10

3.2.2 Audio and ideo Module....................................................................11

3.3 SD! Pac"a#e..............................................................................................12

Chapter 4: SDK API..................................................................................................16

4.1 Messa#e AP$ $nterface.................................................................................16

%.1.1 APP&'ser Mana#ement......................................................................16

%.1.2 Messa#e Sendin# and (eceivin#...........................................................18

%.1.3 File Sendin# and (eceivin#.................................................................22

%.1.% )roup Mana#ement...........................................................................23

4.2 *all AP$ $nterface.......................................................................................24

%.2.1 *all *ontrol $nterface........................................................................24

%.2.2 State +otification $nterface..................................................................26

%.2.3 Media $&O $nterface...........................................................................27

%.2.% *all $nformation ,uery $nterface.........................................................28

%.2.- ideo *onference *ontrol $nterface.......................................................29

%.2. ideo *all *ontrol $nterface................................................................29

4.3 Basic Flow of Messa#e $nterface..................................................................30

%.3.1 Startup Flow....................................................................................30

%.3.2 One/to/one messa#e communication flow...............................................30%.3.2 *ommunication Flow of )roup Messa#e................................................31

4.4 Basic Flow of *all $nterface.........................................................................31

%.%.2 Overall Call Flow.............................................................................32

%.%.3 Basic Flow/*aller $nitiates *all............................................................32

%.%.% Basic Flow/*allee Answers t0e *all......................................................33

%.%.- Basic Flow/Answer and an# 'p.........................................................33

%.%. *allee (eects 0e *all......................................................................34

%.%.4 *all old and (esume.......................................................................34

%.%.5 $nitiate Multi/party *all......................................................................35

%.%.6 Finis0 Multi/Party *all.......................................................................35%.%.17 ideo *onference *ontrol Mode.........................................................36

FreePP Mobile SDK on iOS API Document- 1 -

Page 3: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 3/41

Public

%.%.11 ideo *onference Su8scription...........................................................36

%.%.12 One/way ideo *ontrol Mode............................................................38

4.5 9rror *ode a8le.........................................................................................38

4.6 Definition of enumeration related to messa#e SD! ........................................39

4.7 Definition of enumeration related to call SD! ...............................................394.8 Multi/lan#ua#e !9: filed related to Pus0 notification...................................39

FreePP Mobile SDK on iOS API Document- 2 -

Page 4: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 4/41

Public

Χηαπτερ :

Introduction

1.1  Purpose

$t mainly introduces t0e arc0itecture and 8asic desi#n considerations of FreePP Mo8ile

SD!; and descri8es functions; call met0od and wor"flow of SD! AP$ interface in details.

1.2  Scope

$t is suita8le for FreePP Mo8ile SD! developers and software testin# en#ineer to read

and discuss.

1. Overview

FreePP Mo8ile SD! <iOS version= is developed wit0 O8ective/* lan#ua#e and iOS

SD! 4.1 class li8rary under >*ode -.1 version; and is compati8le wit0 iOS -.7&.7&4.7

system and 0i#0er.

0rou#0 FreePP Mo8ile SD!; t0ird/party application pro#rammer <APP for s0ort= can

reali?e aut0entication; communication num8er allocation and @uery; instant messa#e; A&<audio and video= communication; and ot0er functions; includin#

Bindin# and @uery of APP account wit0 t0e unified communication num8er inside

instant communication system <communication no. for s0ort=

One/to/one instant messa#e; includin# tet or file messa#e

$nstant #roup messa#e

)roup mem8er control; includin# invite; mute; oin and leave

One/to/one audio&video call

Audio&video conference <includin# client or server audio miin#=

(eal/time pus0 to tal"

Besides; for different operatin# systems and *P' processors; SD! adopts 0ardware

acceleration optimi?ation al#orit0m in modules wit0 0i#0 computational compleity; li"e

A& compression codec; and compiles t0e al#orit0m for armv4 and arm% processors

respectively to ensure smoot0 user eperience.

0e content of t0is document mainly includes SD! arc0itecture; SD! internal function

FreePP Mobile SDK on iOS API Document- 3 -

Page 5: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 5/41

Public

modules; SD! desi#n considerations; SD! pac"a#e; AP$ interface desi#n and wor"flow.

1.!  Definitions and Acronyms

 +S +otification Server 

*S *onfi#uration Server  

F>S Forei#n 9c0an#e Su8scri8er  

F>O Forei#n 9c0an#e Office

AP+S Apple Pus0 +otification Service

FPS FreePP Pus0 +otification Service

M9* Messa#e 9c0an#e *enter  

FreePP Mobile SDK on iOS API Document- 4 -

Page 6: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 6/41

Public

Χηαπτερ 2:

Design Considerations

o ensure t0e interopera8ility; compati8ility and openness of SD!; support t0ird/party

accounts in various forms <e.#. nic"name; 9mail address; p0one no. or APP account; etc.=;

0ide t0e implementation details of underlyin# communication system; and reduce APP

development compleity; SD! follows t0e 8asic principles 8elow in desi#n

Unified User Identifier

Cit0in t0e system; SD! identifies eac0 user uni@uely wit0 its communication no.; APP

can associate a specific APP account wit0 t0e allocated communication no. 8y 8indin#

met0od. $n t0is way; for different forms of APP accounts; a unified user identification

mana#ement and control mec0anism inside communication system can 8e reali?ed 8y

communication no.; to ensure interconnection and interopera8ility amon# different APPs.

Besides; w0en APP calls SD! AP$ interface; communication no. s0ould 8e used as tar#et

 parameter; 8ut for end/user; it is transparent and invisi8le; APP can #et correspondin#

communication no. of eac0 APP account; t0rou#0 SD! @uery account interface.

0e relation 8etween APP account and communication no. is s0own 8elow;

 Note: SDK can support intercommunication between different forms of APP accounts

through unified user identification, i.e., communication no.

Unified Message Format

$n SD! system; M$M9 codin# format is unified to define various types of instant

messa#e; t0e 8asic format is type/subtypeE; e.#.

Message type MIME codeet strin# tet&plain

FreePP Mobile SDK on iOS API Document- 5 -

Page 7: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 7/41

Public

$ma#e file ima#e& pn#;pe#...G

Audio file audio&amr;3#p;mp3G

ideo file video&mpe# ;mp%;avi;asf;movG

Ot0er types of file application& pdf ;msword;octet/stream...G

HSO+ strin# application&son

 +ote types of instant messa#e are not limited to t0e definition mentioned a8ove; APP

can epand new M$M9 type and correspondin# function to suit its own needs; w0ile SD! 

can ensure transparent transmission of M$M9 type w0en transmittin# messa#e.

Unified Character Coding Format

o 8e compati8le wit0 strin#s in different lan#ua#es and avoid messy code 8etween

different lan#ua#es or platforms; SD! only adopts 'F/5 code inside t0e system.

Bot0 input parameters and return values of SD! AP$ interface adopt 'F/5 codin#

format; SD! developer needs to complete conversion of related strin# codin# formats in

upper layer. Meanw0ile; SD! also provides auiliary interface function for interconversion

 8etween '+$*OD9 strin# and 'F/5 strin#.

Asynchronous perations of Interface

o reduce t0e operation couplin# 8etween APP and SD!; and improve pro#ram

efficiency and responsiveness; all interfaces involvin# messa#e and conversation functions

<usually need to assess networ" and ta"e a lon# time= 0andle APPIs call re@uests wit0 non/

 8loc"in# mode; i.e. APP can return and continue to run immediately after callin# SD! AP$

interface; w0ile SD! "eeps processin# in 8ac"#round wit0out 8loc"in# t0e APP; and return

results to APP async0ronously 8y correspondin# call8ac" function; t0erefore; APP doesnIt

need to wait; ot0erwise may cause main t0read 8loc"in#; ma"in# App 8ecome unresponsive.

Besides; messa#e&call re@uest $D is adopted 8etween APP and SD! to matc0

async0ronous re@uest and response. 9.#.

①C0en APP sends messa#e; SD! interface will return t0e messa#e $D to APP

immediately; meanw0ile transmittin# messa#e in 8ac"#round wit0 multit0read tec0nolo#yJ

②After sendin# messa#e successfully; SD! will notify APP 8y call8ac" function; and

FreePP Mobile SDK on iOS API Document- 6 -

Page 8: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 8/41

Page 9: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 9/41

Public

Χηαπτερ 3:

Architecture

.1 Overview

FreePP Mo8ile SD! 0as two main functions user identity aut0entication&instant

messa#e and A& call; of w0ic0 t0e former one is SD!Is 8asic function; as well as t0e

infrastructure for client to access t0e instant communication system.

Basic arc0itecture of user identity aut0entication&instant messa#e function is s0own

 8elow;

$n t0e a8ove fi#ure; t0ere are followin# layers in SD!; 8y call relations 8etween function

 8loc"s

$nterface layer mas" t0e implementation details inside middleware; and provide

easy/to/use services of user identity aut0entication and instant messa#e for App.

Service layer provide user identity mana#ement and control; and wor"flow of 

various instant communication services.

*ommunication layer provide interactive operation 8etween client and server; and

ensure t0at client can 8e notified in time.

FreePP Mobile SDK on iOS API Document- 8 -

Page 10: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 10/41

Public

Protocol layer responsi8le for encapsulation and parsin# of protocol messa#e.

Based on t0e a8ove functions; A& communication also provides one/to/one video call

and multi/party A& conference functions.

Basic arc0itecture of SD!Is A& function is s0own 8elow;

$n t0e a8ove fi#ure; t0ere are followin# layers inside SD!; 8y call relations 8etween

function 8loc"s

$nterface layer 0ide t0e implementation details inside middleware; and provide

easy/to/use A& communication services for APP.

*all control and information processin# layer provide wor"flow of call setup;

maintenance; and release; and A& stream processin# and networ" adaptive

function.

ransport protocol layer responsi8le for encapsulation and parsin# of 

communication protocol messa#e.

Moreover; call state mac0ine is t0e core of A& call module; mainly responsi8le for 

recordin# and mana#in# t0e current state of eac0 call; and ma"es correspondin# processin#

action accordin# to user operation or re@uest. SD! call state mac0ine implements call state

control accordin# to followin# state transition dia#ram <Fi#ure 3=

FreePP Mobile SDK on iOS API Document- 9 -

Page 11: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 11/41

Public

$n t0e a8ove fi#ure; $DK9E refers to call stand8y; i.e. SD! returns to t0is state 8efore

initiatin# or finis0in# a callJ $+$$A9E refers to call initiatin# state; i.e. 8ot0 parties of a

call are in t0is state after initiatin# call and 8efore answerin#J A+)'PE refers to call

finis0in# state; i.e. 8ot0 parties of a call are in t0is state if eit0er party 0an#s up first. Besides;

once in A+)'P state; SD! will transfer to $DK9 state automatically.

,hen using ca$$ modu$es& APP needs to disp$ay corresponding user interface

according to current ca$$ state or SDK ca$$ state notification& and perform

corresponding ca$$ contro$ operations(

.2  *odu%es

-(.( 0asic Function Modu$es

Basic function modules include user identity aut0entication&instant messa#e function.

1ayer Modu$e Description

Service layer Aut0entication

and aut0ori?ation

• APP aut0entication and SD! initiali?ation

• FreePP $D application; lo#in and assi#nin# server

• APP account @uery

$nstant   • Messa#e transfer state mac0ine

FreePP Mobile SDK on iOS API Document- 10 -

Page 12: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 12/41

Public

messa#e • Messa#e sendin# and receivin# wor"flow

File transfer    • File transfer state mac0ine

• File sendin# and receivin# wor"flow

Kocal stora#e   • (elated information on user identity

• Server settin#s

• Messa#e lo##in# to 8e processed

)roup

mana#ement

• *reate; oin or leave #roup

• ,uery #roup information

*ommunication

layer

Kon#

connection

• eart8eat service

• (eceivin# of pus0 notification

Ce8 service • P re@uest and response

• Async0ronous operation re@uest @ueue

Protocol layer M,&AP+S   • Pu8lis0in#&su8scription service

• Pus0 notification

P   • Ce8 Service

-(.(. Audio and 2ideo Modu$e

1ayer Modu$e Description

*all control

and

information

 processin#

layer 

*all state mac0ine   • (ecord call state

• *ontrol call processin#

Pus0 notification   • Bac"ward call si#nal transmission

• *all reect si#nal transmission

*all capacity

ne#otiation and

@uality monitorin#

• (eal/time monitorin# of circuit transmission

@uality; adaptive control of A& encoder

•  +e#otiate call capacities and parameters; e.#. video

capacity; encryption capacity and AD capacity

ideo en#ine • ideo capture and compression encodin#

• Adaptive control of video codin# rate

Audio en#ine • Audio capture and compression encodin#

• Audio conference mier

Protocol layer M,&AP+S Kon# connection and Pus0 notification

FreePP Mobile SDK on iOS API Document- 11 -

Page 13: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 13/41

Public

P

$A>2&'DP Session control and streamin# media transmission

.  SDK Pac&age

FreePP Mo8ile SD! li8raries can 8e divided into followin# versions 8y functions

com8ination

0asic +ersion" 8asic functions and instant messa#e functionJ

Ca$$ +ersion" 8asic version L A& call functionJ

Enhanced +ersion call version L audio pus0/to/tal" functionJ

(elations 8etween a8ove SD! li8raries and AP$ interfaces are s0own in followin# ta8le

<c0aracters in 8lue are for Android; and t0at in 8lac" are for iOS and cross platform=

SDK 

+ersion

3eference re$ation

 

Inc$ude/Import

 

Dependency re$ation

4(a/(so5

Function

Basic

version

FreePPSD!.0& ar  li8FreePPSD!Basic.a&so 1=Basic functions

<initiali?ation and user 

mana#ement=J

2=$nstant messa#eJ

*all

version

FreePPSD!.0& ar 

FreePPSD!Stream.

0& ar 

li8FreePPSD!Std.a&so

or 

li8FreePPSD!Std.a&so

1=Basic functions

<initiali?ation and user 

mana#ement=J

2=$nstant messa#eJ

3=One/to/one video

callJ

%=Multi/party A&

conferenceJ9n0anced

version

FreePPSD!.0& ar 

FreePPSD!Stream.

0& ar 

FreePPSD!P.0& a

li8FreePPSD!Pro.a&so

or

li8FreePPSD!Pro.a&so

1=Basic functions

<initiali?ation and user 

mana#ement=J

2=$nstant messa#eJ

3=One/to/one video

callJ

%=A& conferenceJ

-=Audio intercomJ

!ote" ca$$ +ersion and enhanced +ersion can generate t'o $ibrary fi$es& respecti+e$y

FreePP Mobile SDK on iOS API Document- 12 -

Page 14: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 14/41

Public

corresponding to t'o so$utions66c$ient audio mi*ing and ser+er audio mi*ing 4the

one 'ith 7*8 behind is ser+er audio mi*ing5( ,hen using SDK& de+e$oper can

choose either of the t'o $ibrary fi$es as re9uired by ser+ice(

C0en t0e t0ird/party APP uses SD!; t0e followin# Framewor" and Ki8rary need to 8e

lin"ed to APP proect

$f only use 8asic version SD!; add framewor" and Ki8rary as s0own 8elow to

 proect;

$f use call version SD!; 8e sure to add Ki8rary <as s0own 8elow= to proect;

*all version SD! needs specific compilation options; w0ic0 are s0own 8elow;

FreePP Mobile SDK on iOS API Document- 13 -

Page 15: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 15/41

Public

C0en t0ird party references call SD! li8rary files; 8e sure to add macro definition

F(99PPSD!S(9AMAP$E to use AP$ met0od in SD!; as s0own 8elow;

FreePP Mobile SDK on iOS API Document- 14 -

Page 16: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 16/41

Public

C0en t0e t0ird/party references call version SD! li8rary file for conference

function; 8e sure to add macro definition F(99PPSD!S(9AM*O+FAP$E

to use t0e relevant conference AP$ met0od in SD!; as s0own 8elow

FreePP Mobile SDK on iOS API Document- 15 -

Page 17: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 17/41

Public

Χηαπτερ 4:

SDK API

FreePP Mo8ile SD! mainly 0as two types of AP$ interfaces messa#e AP$ and call AP$.

$n #eneral; AP$ interfaces in SD! are all sync0ronous <8loc"in#= interfacesJ async0ronous

<non/8loc"in#= interfaces will 8e specified in special description.

Moreover; any interface mar"ed wit0 CALLBACK is call8ac" interface; and APP needs

to reali?e suc0 interface function in dele#ate class; meanw0ile avoid performin# t0e lon#

runnin# tas"s; to prevent 8loc"in# t0e wor"er t0read of SD!.

 !.1  *essage AP" "nterface

:(( APP/User Management

Interface name Parameters 3eturn +a$ues !otice

; 4015initia$i<e appKey:

Strin#; AppIs aut0ori?ation code;

to identify t0ird/party App.

de$egate:

Any pointer type; t0ird/party

APPIs dele#ate.

Boolean/client

initiali?ation result; if 

succeed; return :9S;

if fail; return +O.

$nitiali?e and start SD! 

client module.

;4!SString

=5bindAppAccount

appUserAccount:

Strin#; App account <may use

 p0one no.; 9mail or ot0er forms

of accounts=.

mustAuth:

Boolean value; if it is :9S; SD! 

s0ould connect to server to

 perform remote identification;

ot0erwise verify app account only

in local data8ase. $n t0is way; APP

decides on its own w0et0er to

"ic" out eac0 ot0er; or lo# in

@uic"ly.

ca$$er!ame:

Strin#/FreePP $D

 8ound wit0 t0is APP

account

$f return value is

 +'KK; App!ey is

ille#itimate; or  

 8indin# fails. For 

details; refer to error 

code ta8le.

erify t0e le#itimacy of 

App; and allocate or 8ind

FreePP $D; and lo# in

FreePP system.

$f caller+ame and

caller+um8er eist; t0ey

will 8e stored in SD!;

and carried out in

out8ound call.

FreePP Mobile SDK on iOS API Document- 16 -

Page 18: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 18/41

Public

Strin#; userIs local nic"name;

mainly used to set callerIs name

in out8ound call.

ca$$er!umber:

Strin#; userIs p0one no.; mainly

used to set callerIs p0one no. in

out8ound call; standard 9.1%

format.

; 4!SDictionary

=59ueryFreePPID0

yAppAccount

appAccountArray:

Strin# array; App account list of 

tar#et user.

Strin# dictionary/list of 

FreePP $D and

correspondin# App

account <as0 ta8le

"eyNvalue=. $f error 

occurs; return +'KKJ if 

multiple accounts

repeat; only one "ey

eists in as0 ta8le.

,uery t0e FreePP $D of 

specific user wit0 APP

account.

; 4!SDictionary

=59ueryAppAccou

nt0yFreePPID

freePPIDArray:

Strin# array; FreePP $D list of 

tar#et user.

Strin# dictionary/list of 

FreePP $D and

correspondin# App

account <as0 ta8le

"eyNvalue=. $f error 

occurs or peer/party

doesnIt install FreePP;

return +'KKJ if  

multiple accounts

repeat; only one "ey

eists in as0 ta8le.

,uery t0e FreePP $D of 

specific user wit0 APP

account.

;

4int5setParameter

name:

Strin#; parameter name.

+a$ue:

Strin#; parameter value.

$nte#er; return 7/setup

succeeds; for error;

refer to error code

ta8le.

Set SD!Is internal

wor"in# parameters.

 +ote for currently

supported parameters;

 please refer to

 Parameter 

Configuration Table.

; 4!SString

=5getParameter

name:

String& parameter name(

Strin#/parameter 

value. $f it doesnIt

eist; return +'KK.

)et SD!Is internal

 parameters.

;

4int5get1astErrorC

ode

!o $nte#er; if no error 

eists; return 7. <for 

error code; refer to

)et t0e error code of t0e

Kast failed interface

invocation.

FreePP Mobile SDK on iOS API Document- 17 -

Page 19: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 19/41

Public

section %.% error code

ta8le=

 +ote t0is interface is

t0read /safe i.e. SD! 

ensure separate stora#e

of last errors in different

t0reads; Once call t0is

interface; SD! will clear 

error code of current

t0read.

;

4int5$ogoutAppAcc

ount

!o $nte#er; if no error 

occurs; return 7.

9rror code /1-

FreePP SD!;

uninitiali?ed.

Ko# out and reset current

account.

 +ote SD! temporarily

donIt delete local

data8ase; for possi8le

follow/up lo#in 8y

reusin# account 8indin#.

;

4+oid5onSystemE+e

nt

e+ent)ype"  inte#er; event type;

includin#

1Ncurrent user is "ic"ed outJ

correspondin# data is +'KKJ

data>bect" correspondin# data

o8ect. $t varies wit0 different

event type; can 8e +'KK.

 +o (eport event information

correspondin# to current

account.

1N current user is "ic"ed

out

 +ote1. Parameter confi#uration ta8le of name in #etParameter and setParameter interface

Parameter name peration 3ea$i<ation

re9uirement

!otice

ersion #et +o FreePP SD! version +o.

(ootcs #et&set :es FreePP SD! (oot*S address; used

for server portal address

ma#roupmem8er #et +o Ma. num8er of #roup mem8ers

videoorientation #et&set +o ideo display orientation 1

<vertical= or 7 <0ori?ontal=; default

1/vertical

calltimeout #et&set +o *all timeout <s=; default %-s; ran#e

1%-s

:((. Message Sending and 3ecei+ing

Interface name Parameter 3eturn +a$ue !otice

; 4!SString =5sendMessage dstFreePPID:

Strin#; FreePP $D of tar#et user.Strin#/messa#e $D.

Send one/to/one multimediamessa#e to specific user.

FreePP Mobile SDK on iOS API Document- 18 -

Page 20: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 20/41

Public

mime)ype:

Strin#; type of multimedia

messa#e; e.#. tet&plainE

te*tContent:

Strin#; content of tet messa#e;

format distin#uis0es 8y

mimeype. $f in tet&plain; it is

 plain strin#J if in

application&son; it is HSO+

strin#.

fi$ePath:

Strin#; local file pat0 of 8inary

file.

Strin#; messa#e $D for 

retransmission

$f error  

occurs; return

 +'KK.

!ote"

message ID

format"

FreePP ID6

Uni*

timestamp

4s56t'o

random

digits8

 +ote if messa#e$D

 parameter 0as value; it will

 8e ud#ed w0et0er valid.

$f t0is Messa#e$D

#enerates 8efore FreePP

SD!; consider it valid.

$f valid; re/send its

correspondin# messa#e;

and return t0is Messa#e $DJ

$f invalid; directly return

 +'KK.

 +ote t0is is async0ronous

interface; its runnin# results

will 8e returned to APP

t0rou#0 correspondin#

call8ac" interface.

; 4!SString

=5send?roupMessage

dst?roupID:

Strin#; uni@ue identifier of 

tar#et #roup.

mime)ype:

Strin#; type of multimedia

messa#e

te*tContent:Strin#; content of tet messa#e;

format distin#uis0es 8y

mimeype.

fi$ePath:

Strin#; local file pat0 of 8inary

file.

Strin#; messa#e $D for  

retransmission.

Strin#/

messa#e $D.

$f error  

occurs; return

 +'KK.

!ote"

message ID

format"

FreePP ID6

Uni*

timestamp

4s56t'o

random

digits8

Send one/to/many

multimedia messa#e to

specific #roup.

 +ote if messa#e$D

 parameter 0as value; it will

 8e ud#ed w0et0er valid. $f 

valid; resend correspondin#

messa#e of t0is messa#e $D.

 +ote t0is is async0ronous

interface; its runnin# results

will 8e returned to APP

t0rou#0 correspondin#

call8ac" interface.

(A++)A(K 

;

4+oid5onSendMessageE+ent

messageID:Strin#; uni@ue messa#e send $D.

send3esu$t:

$nte#er; results of messa#e send.

7Nsucceed; if fail; refer to error 

code ta8le.

 +o *all8ac" response interfaceof one/to/one and #roup

messa#e send state; it is

dele#ate met0od interface.

App updates messa#e send

state t0rou#0 t0is interface.

For 8ot0 tet and file

messa#es; t0is call8ac" is

used to s0ow send result. For 

file messa#e;

FreePP Mobile SDK on iOS API Document- 19 -

Page 21: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 21/41

Page 22: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 22/41

Page 23: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 23/41

Public

3<messa#e

receivin# state

notification=

 +SStrin# messa#e$D

int messa#eStatus

int createime

Messa#eStatus

Description of eac0 attri8ute is s0own 8elow

mime)ype" strin#; multimedia messa#e formatJ 

srcFreePPID" strin#; FreePP $D of senderJ

dstFreePPID" strin#; FreePP $D of receiver; for #roup c0at; it is )roup $DJ

te*tContent" strin#; content of contet messa#eJ

messageID" strin#; uni@ue $D of messa#eJ

fi$ePath" strin#; used inside SD!; file pat0 w0en sendin# file; invalid w0en receivin#

messa#eJ

session)ype" inte#er; session type of messa#e <7 sin#le c0at; 1 #roup c0at=J

create)ime" inte#er; time of messa#e #eneration; 'ni timestamp; unit sJ

freepp?roup" )roup$nfo o8ect pointer; #roup messa#e o8ect; valid for #roup c0atJ

groupID" strin#; uni@ue $D of #roupJ

group!ame" strin#; name of #roupJ 

in+itorFreePPID" strin#; FreePP $D of inviterJ

array@oinFreePPID" strin# array; FreePP $D list of inviteeJ

array1ea+eFreePPID" strin# array; FreePP $D list of leavin# #roup c0atJ

$ea+e3eason" inte#er; reason for leavin# #roup <N7 "ic"ed outJ N1 leave=.

messageStatus" inte#er; messa#e send notification type; includin# 1Ndelivered;

2Nread.

:((- Fi$e Sending and 3ecei+ing

Interface name Parameter 3eturn +a$ue !otice

;

4int5do'n$oadMess

ageAttachment

messageID:

Strin#; uni@ue $D of messa#e

re@uired to 8e downloaded.

is)humbnai$:

$nte#er; w0et0er to download

t0um8nail; 7/download ori#inal

$nte#er/7 added to

download @ueue;

for ot0er error 

code; refer to error 

code ta8le.

Download attac0ment

<multimedia file= of specific

messa#e.

 +ote First; App #ets messa#e

notification from

On(eceivedMessa#eevent

FreePP Mobile SDK on iOS API Document- 22 -

Page 24: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 24/41

Public

ima#e< +ote invalid for non/

ima#e type=.

fi$ePath:

Strin#; local file pat0 of 

downloaded file; includin# file

name.

interface; t0en calls

downloadMessa#eAttac0ment

interface to download

attac0ment of t0e messa#e.

 +ote t0is is async0ronous

interface; its runnin# results

will 8e returned to APP

t0rou#0 correspondin# call8ac" 

response interface.

;

4+oid5onDo'n$oad

MessageAttachme

ntProgressE+ent

messageID:

Strin#; uni@ue $D of messa#eJ

do'n$oadProgress:

$nte#er; percenta#e of current

fileIs download pro#ress

 +o *all8ac" interface of file

download pro#ress; it is

dele#ate met0od interface.

App can update fileIs pro#ress

indication 8y t0is call8ac" 

function.

;

4+oid5onUp$oadMe

ssageAttachmentP

rogressE+ent

messageID" strin#; uni@ue $D of 

messa#eJ

up$oadProgress:

$nte#er; percenta#e of current

fileIs upload pro#ress.

 +o *all8ac" interface of file

upload pro#ress; it is dele#ate

met0od interface.

App can update fileIs pro#ress

indication 8y t0is call8ac" 

function.

 +ote file upload initiates from

sendMessa#e or 

send)roupMessa#e interface.

:((: ?roup Management

Interface name Parameter 3eturn +a$ue !otice

; 4!SString

=5create?roupChat

group!ame:

Strin#; topic of creatin#

t0e #roup.

memberArray:

Strin# array; FreePP $D

list of #roup mem8er.

Strin#/#roup $D allocated 8y server.

$f error occurs; return +'KK.

*reate a new

#roup.

; 4int5>oin?roupChat groupID:

Strin#; #roup $D returned

w0en creatin# #roup.

memberArray:

Strin# array; FreePP $D

array of invited #roup

$nte#er/result of oin #roup. $nvite user to

 oin specific

#roup.

0e invited

client will

receive

FreePP Mobile SDK on iOS API Document- 23 -

Page 25: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 25/41

Public

mem8er. notification 8y

messa#e.

;

4int5$ea+e?roupChat

groupID:

Strin#; #roup $D returned

w0en creatin# #roup.

memberArray:

Strin# array; FreePP $D

array of leaved #roup

mem8er.

$nte#er/result of leavin# #roup. Keave specific

#roup; or "ic" 

out specific user 

of #roup.

0e "ic"ed out

client will

receive

notification 8y

messa#e.

;

4FreePP?roupb>ect

=5get?roupChatInfo

groupID:

Strin#; #roup $D returned

w0en creatin# #roup; or 

#ot w0en receivin# #roup

messa#e.

)roup o8ect/defined 8y platform.

 +ote #roup o8ect < )roup$nfo=

contains followin# attri8utes

groupID" strin#; uni@ue $D of 

#roupJ

o'nerFreePPID" strin#; FreePP

$D of #roup creatorJ

arrayMemberFreePPID"   strin#

array; FreePP $D of #roup

mem8erJ

create)ime" inte#er; time w0en

creatin# #roupJ

group!ame" strin#; #roup name

or topicJ

)et information

of specific

#roup

 !.2 (a%% AP" "nterface

:(.( Ca$$ Contro$ Interface

Interface name Parameter 3eturn +a$ue !otice

; 4!SString

=5ma%eCa$$

dstID"  strin#; FreePP $D of t0e

called user.

media"  inte#er; media type of 

call.

1N Audio call

2N ideo call

-NFull duple audio c0annel for 

 pus0/to/tal"

Strin#/callIs

session identifier 

<call/id=.

$nitiate a free FreePP

audio or video call.

; 4!SString phone"  strin#; p0one no. of t0e Strin#/callIs $nitiate savin# out8ound

FreePP Mobile SDK on iOS API Document- 24 -

Page 26: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 26/41

Public

=5ma&eOutbound 

(a%% 

callee.

+ia:Out8ound

+ia Out8ound route code.

session identifier 

<call/id=.

audio call.

; 4!SString

=5 oin(onference

dstIDs" FreePP $D of  

 participants.

media"  inte#er; conferenceIs

media type.

ser+er" strin#; room $D of 

server audio miin# conference

Phones"  strin# array; p0one no.

of participants.

+ia Out8ound route code.

Strin#/session

identifier of  

conference

<conference/id=.

$nitiate a conference call.

0e met0od can 8e called

repeatedly; for invitin#

various participants to t0e

same conference.

 +ote server is valid only

w0en media type e@ual to

3N Audio conference callJ

Or %Nvideo conference

call.

; 4int5

 getNetwor&-ua%it 

 y

 4reser+e5

ca$$Id" strin#; session identifier 

of specific call. 

$nte#er/networ" 

@uality score value

R7; .

)et score of networ" 

transmission @uality of 

call.

;

4int5hangupCa$$

ca$$Id" strin#; callIs session

identifier <returned 8y makeCall 

or onReceiveCallEvent)

$nte#er/w0et0er 

operate

successfully.

Finis0 specific call <8ot0

caller and t0e called can

call t0is function to 0an#

up t0emselves=.

;4int5

hangupConferen

ce

conferenceId" strin#; session

identifier of conference call

<returned 8y oin*onference or 

onReceiveCallEvent =

$nte#er/w0et0er 

operate

successfully.

Finis0 specific conference

call <0an# up everyone in

conference room=

; 4int5ans'erCa$$ ca$$Id" strin#; callIs session

identifier <returned 8y

on(eceived*all=

$nte#er/w0et0er 

operate

successfully.

0e called user answers

specific incomin# call.

; 4int5ho$dCa$$ ca$$Id" string& ca$$#s session

identifier(

ho$d" inte#er; 0old <1= or resume

<7= call.

$nte#er/w0et0er 

operate

successfully.

One/way call 0old or 

resume call.

; 4int5muteCa$$ ca$$Id" strin#; callIs session

identifier or conferenceIs room

identifier.

mute"inte#er; microp0one mute

<1= or unmute <7=.

$nte#er/w0et0er 

operate

successfully.

One/way call mute or 

unmute microp0one.

; 4int5sendD)MF ca$$ID" strin#; callIs session

identifier 

digit"  strin#; secondary dial

num8er to 8e sent. 

$nte#er/w0et0er 

operate

successfully.

Send DMF dial tone to

t0e peer user of an

answered call to complete

secondary dialin#.

FreePP Mobile SDK on iOS API Document- 25 -

Page 27: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 27/41

Public

time"  inte#er; interval for 

sendin# multiple "ey di#its;

unit ms <+ote if send a

di#it only; it can 8e set as 7=.

mode" inte#er; DMF si#nal

transmission mode

7 in/8and dialin# mode

1 out/8and dialin# mode

:(.(. State !otification Interface

Interface name Parameter 3eturn +a$ue !otice

(A++)A(K 

6

4+oid5on3ecei+eCa

$$E+ent

ca$$Id" strin#; session

identifier of call or  

conference.

ca$$erId" strin#; FreePP $D

of caller.

ca$$er!ame" strin#;

nic"name or p0one no. of 

caller.

media" inte#er; media type

of call re@uest.

1N Audio callJ

2N视ideo callJ

3NAudio conference callJ

%Nideo conference call.

ca$$)ype"  inte#er; call type

of received notification.

1N $ncomin# call

2N Missed call

!o  +otify APP of receivin# call

re@uest from remote user.

 +ote

1) $f APP is in loc" screen

state; SD! will pop up

P'S notification

automaticallyJ

2)$f APP is in runnin# state;

APP will decide to display

incomin# notification

interface on its own.

(A++)A(K 

6

4+oid5onCa$$StateE

+ent

ca$$Id" strin#; session

identifier of call or  

conference.

state"  inte#er; current call

state; can ta"e followin#

values

7 / $DK9;

 1 / $+$$A9;

 2 / A+SC9( ;

 3 / OKD;

 +o +otify APP of call state

c0an#ed.

$n different call state; APP

s0ould display different

 prompts

1= $DK9- +o

2= +$$A9- *allin# <for 

caller= or connectin# <for 

callee=

FreePP Mobile SDK on iOS API Document- 26 -

Page 28: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 28/41

Public

 % / A+)'P。

reason" inte#er.

C0en state is A+)'P;

identify reason for finis0in#

a call; includin# user offline;

networ" connection

unavaila8le; 8usyin#; etcJ

C0en state is A+SC9(;

identify way to #o into

answer state; includes 7/

answerJ

1 / (esume call.

3= A+SC9(/ al"in#

%= OKD

-= A+)'P

(A++)A(K 

6

4+oid5onConferenc

eStateE+ent

conferenceId" strin#;

conferenceIs session

identifier.

ca$$Id" strin#; callIs session

identifier of participants.

ca$$eeId" strin#; FreePP $D

of participants.

state"  inte#er; current call

state; can ta"e followin#

values

 1 / $+$$A9; 2 / A+SC9( ;

 3 / A+)'P。

C0en state is A+)'P;

identify reason for finis0in#

a call; includin# user offline;

networ" connection

unavaila8le; 8usyin#; etcJ

C0en state is A+SC9(;

identify way to #o intoanswer state includes 7/

answerJ

1 / (esume call.

 +o

 +otify APP of certain

 participantIs state c0an#e in

conference.

$n different call state; APP

s0ould display different

 prompts

1= $+$$A9-*allin# <for 

caller= or connectin# <for 

callee=

2= A+SC9(

3= A+)'P

(A++)A(K 

6 4+oid5

on3emote2ideoSta

teE+ent

ca$$eeId" strin#; FreePP $D

of participant.

state"  inte#er; remote video

state; can ta"e followin#

values

 7 / SOP;

 +o

 +otify APP of remote video

state c0an#e.

$n different call state; APP

s0ould display different

 prompts

  1= SA(-   Start remote

FreePP Mobile SDK on iOS API Document- 27 -

Page 29: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 29/41

Public

 1 / SA(; video sendin#

2= SOP - Stop remote

video sendin#

:(.(- Media I/ Interface

Interface name Parameter 3eturn +a$ue !otice

; 4int5setCamera de+ice" inte#er; device

identifier; e.#.

7 / (ear camera

1 / Front camera

/1 T*lose preview

$nte#er/w0et0er 

operate

successfully.

Set camera for current video call.

;

4int5setAudioutp

ut

de+ice" inte#er; spea"er 

device identifier; e.#.

 7 / (eceiver

1 / Spea"er

2 /Bluetoot0 0eadset

connected currently

$nte#er/w0et0er 

operate

successfully.

Set spea"er device for call.

;

4int5set2ideoDisp$a

y

disp$ay3emote"  iew

o8ect; window o8ect to

display remote video <peer 

userIs ima#e; select o8ect

type 8y operatin# system=.

disp$ayPre+ie'" iew

o8ect; window o8ect to

display near/end video <own

ima#e=.

$nte#er/w0et0er 

operate

successfully.

Set window o8ect to display video

in video call.

;

4int5set3ingbac%)o

ne

ringbac%Fi$ePath" strin#;

audio pat0 in Bundle of App

layer or local file.

$nte#er/w0et0er 

operate

successfully.

Set rin#8ac" tone of out8ound call.

Supported file format

 pcm<1!=、wav<pcm5";1";32";11

72-;227-7;%%177";%5"JpcmaJpcmu=

:(.(: Ca$$ Information uery Interface

Interface name Parameter 3eturn +a$ue !otice

; 4!SArray  +o Array/ strin# list of )et t0e list of call$D for all calls currently

FreePP Mobile SDK on iOS API Document- 28 -

Page 30: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 30/41

Public

=5getA$$Ca$$ID1ist all call$Ds. on#oin# ;includes call/in and call/out.

; 4FreePPCa$$Info

=5getCa$$Info

ca$$Id"

strin#;

session

identifier of 

call or  

conference.

FreePP*all$nfo

o8ect pointer/call

information o8ect.

)et correspondin# call o8ect 8y *all$D.

FreePPCa$$Info ob>ect contains fo$$o'ing

attributes"

ca$$Id" strin#; session identifier of call or 

conference.

ca$$eeId" strin#; FreePP $D of peer user.

ca$$ee!ame" strin#; nic"name or p0one no. of 

 peer user.

media)ype" inte#er; media type of call re@uest

<audio; video or conference=.

ca$$State"  inte#er; current call state can ta"e

followin# values

7 / $DK9;

 1 / $+$$A9;

 2 / A+SC9( ;

 3 / OKD;

 % / A+)'P。

:(.(B 2ideo Conference Contro$ Interface

$nterface name Parameter (eturn

value

 +otice

; 4int5

subConference2ideo

pubID" strin#; FreePP $D

of video pu8lis0er 

$nte#er/

w0et0er 

operate

successfully

.

Su8scri8e conference video for 

conference participants <0ost and

attendee=

 +ote anyone can call t0is function;

 8ut only 0ost can complete actual

su8scription function.;4int5$istConference conferenceID" strin#;

conference room $D

$nte#er/

w0et0er 

operate

successfully

(e@uest for updatin# participants

list of conference room

 +ote once call t0is function; SD! 

will report participant state

information to APP automatically

t0rou#0 on*onferenceState9vent

L 4int5

ctr$Conference

conferenceID" strin#;

conference room $D

action" integer&  controlaction to 8e performed

$nte#er/

w0et0er 

operatesuccessfully

Perform specific conference control

action to participant <currently only

support "ic"out function=

FreePP Mobile SDK on iOS API Document- 29 -

Page 31: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 31/41

Page 32: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 32/41

Public

call8ac" functionJ

Step . For file messa#e; receiver calls do'n$oadMessageAttachment function to download

attac0ment of t0e messa#eJ

Step4. (eceiver #ets file download pro#ress t0rou#0

onDo'n$oadMessageAttachmentE+ent  call8ac" function; and #ets state value of 

downloaded messa#e file t0rou#0 onDo'n$oadMessageE+ent call8ac" function.

:(-(. Communication F$o' of ?roup Message

Step 1. )et #roup $D 8y callin# create?roupChat funciton to create #roup; or receive #roup

invitation t0rou#0 on3ecei+edMessageE+ent call8ac" functionJ

Step 2. *all send?roupMessage function to send #roup messa#eJ

Step 3. )et #roup messa#e send state t0rou#0 onSendMessageE+ent  call8ac" functionJ

Step%. For file messa#e; #et file upload pro#ress t0rou#0

onUp$oadMessageAttachmentE+ent call8ac" functionJ

Step -. (eceiver will receive messa#e or notification t0rou#0 on3ecei+edMessageE+ent

call8ac" functionJ

Step . For file messa#e; receiver calls do'n$oadMessageAttachment function to download

attac0ment of t0e messa#eJ

Step4. (eceiver #ets file download pro#ress t0rou#0

onDo'n$oadMessageAttachmentE+ent call8ac" function; and #ets state value of 

downloaded messa#e file t0rou#0 onDo'n$oadMessageE+ent call8ac" function.

 !.!  )asic %ow of (a%% "nterface

 +ote w0en performin# call 0old function; APP is responsi8le for playin# call 0old music.

FreePP Mobile SDK on iOS API Document- 31 -

Page 33: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 33/41

Public

:(:(. Overa%% (a%% %ow

:(:(- 0asic F$o'6Ca$$er Initiates Ca$$

FreePP Mobile SDK on iOS API Document- 32 -

Page 34: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 34/41

Public

:(:(: 0asic F$o'6Ca$$ee Ans'ers the Ca$$

:(:(B 0asic F$o'6Ans'er and ang Up

FreePP Mobile SDK on iOS API Document- 33 -

Page 35: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 35/41

Public

:(:( Ca$$ee 3e>ects )he Ca$$

:(:( Ca$$ o$d and 3esume

FreePP Mobile SDK on iOS API Document- 34 -

Page 36: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 36/41

Public

:(:( Initiate Mu$ti6party Ca$$

:(:(G Finish Mu$ti6Party Ca$$

FreePP Mobile SDK on iOS API Document- 35 -

Page 37: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 37/41

Public

:(:(H 2ideo Conference Contro$ Mode

:(:( 2ideo Conference Subscription

Processin# flow of conferee end is s0own 8elow;

FreePP Mobile SDK on iOS API Document- 36 -

Page 38: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 38/41

Page 39: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 39/41

Public

:(:(. ne6'ay 2ideo Contro$ Mode

 !."  /rror (ode 0ab%e

For iOS and Android AP$ interfaces; if t0e error codeIs unified definition of return

value is 7; operation succeeds. *orrespondin# error codes of ot0er values are s0own 8elow

Error code Meaning

(elated to networ" and device

/1 +o networ" connection

/2 imeout or error of AP$ re@uest

(elated to user

/17 $lle#itimate App!ey

/11 Parameter error  

/12 (epeat lo#in; current user is "ic"ed out; or already lo#s in on ot0er device

/13 Banned user; current user is for8idden

/1% 0is FreePP $D doesnIt eist

/1- FreePP SD! isnIt initiali?ed or 8inds successfully

/1 FreePP SD! setParameter interface parameter 0as no correspondin# value

/14 rootcs is not set <must 8e set t0rou#0 setParameter interface=

(elated to messa#e

/27 Failed to send messa#e/uploaded attac0ment is 8eyond maimum limit

/21 Failed to download file

FreePP Mobile SDK on iOS API Document- 38 -

Page 40: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 40/41

Public

/22 Downloaded file doesnIt eist

(elated to multi/people session&#roup c0at

/37 Failed to create multi/people session #roup

/31 Failed to invite friends to multi/people session #roup

/32 Failed to leave #roup c0at

9rror code related to call

/%7 $ncorrect call$D of current call

/%1 (eal call doesnIt eist

/%2 *urrently eisted out8ound callin#

/%3 Failed to set output device

/%% Microp0one permission doesnIt start t0e error code

/%- *anIt call oneIs own error code

9rror code related to conference

/-7 $ncorrect conferenceid of current conference

/-1 +o current conference

/-2 0is operation is not supported in conference

 !.6  Definition of enumeration re%ated to message SDK

 !.#  Definition of enumeration re%ated to ca%% SDK

 !.$  *u%ti$%anguage K/1 fi%ed re%ated to Push notification

$f APP needs to develop Pus0 notification in multi/lan#ue; t0e followin# fields need to

 8e added to multi/lan#ua#e file

UAU N UAnswerUJ

UU N UiewUJ

U*U N UQV *allin# :ouUJ

UMU N U:ou 0ave QV missed call<s=.UJ

U+U N U:ou 0ave QV unread messa#e<s=.UJ

UOU N U:ou 0ave QV missed call<s=; and QV unread messa#e<s=.UJ

APP can ta"e custom value for eac0 filed.

FreePP Mobile SDK on iOS API Document- 39 -

Page 41: API-iOS-English-150721.doc

8/18/2019 API-iOS-English-150721.doc

http://slidepdf.com/reader/full/api-ios-english-150721doc 41/41

Public

)his page is intentiona$$y $eft b$an%(