Chat API para Swift
Gestione el sistema de Chat desde API. Acceda o responda a las conversaciones desde nuestra API.
Obtener listado de canales de chat activos con Swift
let aclass : String = "chat";
let method : String = "getchatchannels";
let user : String = "user";
let password : String = "password";
let urlPath: String = "https://www.afilnet.com/api/http/?class="+aclass+"&method="+method+"&user="+user+"&password="+password
let url: NSURL = NSURL(string: urlPath)!
let request1: NSURLRequest = NSURLRequest(url: url as URL)
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as NSError {
print(error.localizedDescription)
}
})
let aclass : String = "chat";
let method : String = "getchatchannels";
let user : String = "user";
let password : String = "password";
let urlPath: String = "https://www.afilnet.com/api/http/"
let url: NSURL = NSURL(string: urlPath)!
let request1: NSMutableURLRequest = NSMutableURLRequest(url: url as URL)
request1.httpMethod = "POST"
let stringPost="class="+aclass+"&method="+method+"&user="+user+"&password="+password
let data = stringPost.data(using: String.Encoding.utf8)
request1.timeoutInterval = 60
request1.httpBody=data
request1.httpShouldHandleCookies=false
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as Error {
print(error.localizedDescription)
}
Parámetro | Descripción | Obligatorio / Opcional |
---|---|---|
class=chat | Clase a la que se realiza la petición | Obligatorio |
method=getchatchannels | Método de la clase al que se realiza la petición | Obligatorio |
user | El usuario / email de su cuenta de Afilnet | Obligatorio |
password | El password de su cuenta de Afilnet | Obligatorio |
Respuesta:
- status
-
result (si status=success), recibirá los siguientes valores:
-
list
- platformid
- platform
- name
-
list
- error (si status=error), aquí recibirá el código de error
Códigos de error:
Código | Descripción |
---|---|
MISSING_USER | Usuario / email no incluido |
MISSING_PASSWORD | Password no incluido |
MISSING_CLASS | Clase no incluida |
MISSING_METHOD | Método no incluido |
MISSING_COMPULSORY_PARAM | Parámetro obligatorio no incluido |
INCORRECT_USER_PASSWORD | Usuario o clave incorrectos |
INCORRECT_CLASS | Clase incorrecta |
INCORRECT_METHOD | Método incorrecto |
Enviar un mensaje por chat con Swift
let aclass : String = "chat";
let method : String = "getchatchannels";
let user : String = "user";
let password : String = "password";
let urlPath: String = "https://www.afilnet.com/api/http/"
let url: NSURL = NSURL(string: urlPath)!
let request1: NSMutableURLRequest = NSMutableURLRequest(url: url as URL)
request1.httpMethod = "POST"
let stringPost="class="+aclass+"&method="+method+"&user="+user+"&password="+password
let data = stringPost.data(using: String.Encoding.utf8)
request1.timeoutInterval = 60
request1.httpBody=data
request1.httpShouldHandleCookies=false
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as Error {
print(error.localizedDescription)
}let aclass : String = "chat";
let method : String = "sendmessage";
let user : String = "user";
let password : String = "password";
let platform : String = "whatsapp";
let platformid : String = "100";
let destination : String = "3460000000";
let message : String = "test+message";
let urlPath: String = "https://www.afilnet.com/api/http/?+"&class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&platform="+platform+"&platformid="+platformid+"&destination="+destination+"&message="+message
let url: NSURL = NSURL(string: urlPath)!
let request1: NSURLRequest = NSURLRequest(url: url as URL)
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as NSError {
print(error.localizedDescription)
}
})
let aclass : String = "chat";
let method : String = "sendmessage";
let user : String = "user";
let password : String = "password";
let platform : String = "whatsapp";
let platformid : String = "100";
let destination : String = "3460000000";
let message : String = "test+message";
let urlPath: String = "https://www.afilnet.com/api/http/"
let url: NSURL = NSURL(string: urlPath)!
let request1: NSMutableURLRequest = NSMutableURLRequest(url: url as URL)
request1.httpMethod = "POST"
let stringPost="class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&platform="+platform+"&platformid="+platformid+"&destination="+destination+"&message="+message
let data = stringPost.data(using: String.Encoding.utf8)
request1.timeoutInterval = 60
request1.httpBody=data
request1.httpShouldHandleCookies=false
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as Error {
print(error.localizedDescription)
}
Parámetro | Descripción | Obligatorio / Opcional |
---|---|---|
class=chat | Clase a la que se realiza la petición | Obligatorio |
method=sendmessage | Método de la clase al que se realiza la petición | Obligatorio |
user | El usuario / email de su cuenta de Afilnet | Obligatorio |
password | El password de su cuenta de Afilnet | Obligatorio |
platform | Plataforma a la que se envía el mensaje. Valores posibles: 'webchat', 'whatsapp', 'telegram', 'operator' | Obligatorio |
platformid | Identificador de la plataforma | Obligatorio |
destination | Destinatario donde se envía el mensaje de chat | Obligatorio |
message | Mensaje a enviar por chat | Obligatorio |
Respuesta:
- status
-
result (si status=success), recibirá los siguientes valores:
- No recibirá valores adicionales
- error (si status=error), aquí recibirá el código de error
Códigos de error:
Código | Descripción |
---|---|
MISSING_USER | Usuario / email no incluido |
MISSING_PASSWORD | Password no incluido |
MISSING_CLASS | Clase no incluida |
MISSING_METHOD | Método no incluido |
MISSING_COMPULSORY_PARAM | Parámetro obligatorio no incluido |
INCORRECT_USER_PASSWORD | Usuario o clave incorrectos |
INCORRECT_CLASS | Clase incorrecta |
INCORRECT_METHOD | Método incorrecto |
CHANNEL_NOT_FOUND | El canal indicado no existe |
Enviar un archivo por chat con Swift
let aclass : String = "chat";
let method : String = "sendmessage";
let user : String = "user";
let password : String = "password";
let platform : String = "whatsapp";
let platformid : String = "100";
let destination : String = "3460000000";
let message : String = "test+message";
let urlPath: String = "https://www.afilnet.com/api/http/"
let url: NSURL = NSURL(string: urlPath)!
let request1: NSMutableURLRequest = NSMutableURLRequest(url: url as URL)
request1.httpMethod = "POST"
let stringPost="class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&platform="+platform+"&platformid="+platformid+"&destination="+destination+"&message="+message
let data = stringPost.data(using: String.Encoding.utf8)
request1.timeoutInterval = 60
request1.httpBody=data
request1.httpShouldHandleCookies=false
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as Error {
print(error.localizedDescription)
}let aclass : String = "chat";
let method : String = "sendfile";
let user : String = "user";
let password : String = "password";
let platform : String = "whatsapp";
let platformid : String = "100";
let destination : String = "3460000000";
let type : String = "image";
let fileurl : String = "https://www.example.com/image.jpg";
let thumburl : String = "https://www.example.com/thumb.jpg";
let message : String = "test+message";
let urlPath: String = "https://www.afilnet.com/api/http/?+"&class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&platform="+platform+"&platformid="+platformid+"&destination="+destination+"&type="+type+"&fileurl="+fileurl+"&thumburl="+thumburl+"&message="+message
let url: NSURL = NSURL(string: urlPath)!
let request1: NSURLRequest = NSURLRequest(url: url as URL)
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as NSError {
print(error.localizedDescription)
}
})
let aclass : String = "chat";
let method : String = "sendfile";
let user : String = "user";
let password : String = "password";
let platform : String = "whatsapp";
let platformid : String = "100";
let destination : String = "3460000000";
let type : String = "image";
let fileurl : String = "https://www.example.com/image.jpg";
let thumburl : String = "https://www.example.com/thumb.jpg";
let message : String = "test+message";
let urlPath: String = "https://www.afilnet.com/api/http/"
let url: NSURL = NSURL(string: urlPath)!
let request1: NSMutableURLRequest = NSMutableURLRequest(url: url as URL)
request1.httpMethod = "POST"
let stringPost="class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&platform="+platform+"&platformid="+platformid+"&destination="+destination+"&type="+type+"&fileurl="+fileurl+"&thumburl="+thumburl+"&message="+message
let data = stringPost.data(using: String.Encoding.utf8)
request1.timeoutInterval = 60
request1.httpBody=data
request1.httpShouldHandleCookies=false
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as Error {
print(error.localizedDescription)
}
Parámetro | Descripción | Obligatorio / Opcional |
---|---|---|
class=chat | Clase a la que se realiza la petición | Obligatorio |
method=sendfile | Método de la clase al que se realiza la petición | Obligatorio |
user | El usuario / email de su cuenta de Afilnet | Obligatorio |
password | El password de su cuenta de Afilnet | Obligatorio |
platform | Plataforma a la que se envía el mensaje. Valores posibles: 'webchat', 'whatsapp', 'telegram', 'operator' | Obligatorio |
platformid | Identificador de la plataforma | Obligatorio |
destination | Destinatario donde se envía el archivo | Obligatorio |
type | Tipo de archivo que se envía. Valores posibles: 'image', 'video', 'audio', 'voice', 'document', 'contact' | Obligatorio |
fileurl | Url dónde se encuentra el archivo que se va a enviar por chat | Obligatorio |
thumburl | Url de la imagen en miniatura que acompaña el archivo | Opcional |
message | Mensaje que acompaña el archivo | Opcional |
Respuesta:
- status
-
result (si status=success), recibirá los siguientes valores:
- No recibirá valores adicionales
- error (si status=error), aquí recibirá el código de error
Códigos de error:
Código | Descripción |
---|---|
MISSING_USER | Usuario / email no incluido |
MISSING_PASSWORD | Password no incluido |
MISSING_CLASS | Clase no incluida |
MISSING_METHOD | Método no incluido |
MISSING_COMPULSORY_PARAM | Parámetro obligatorio no incluido |
INCORRECT_USER_PASSWORD | Usuario o clave incorrectos |
INCORRECT_CLASS | Clase incorrecta |
INCORRECT_METHOD | Método incorrecto |
CHANNEL_NOT_FOUND | El canal indicado no existe |
CHAT_NOT_FOUND | El chat indicado no existe |
INCORRECT_FILETYPE | El tipo de archivo es incorrecto, revise los valores posibles |
INCORRECT_FILEURL | La url del archivo no es válida |
INCORRECT_THUMBURL | La url de la miniatura no es válida |
Obtener listado de conversaciones de un chat con Swift
let aclass : String = "chat";
let method : String = "sendfile";
let user : String = "user";
let password : String = "password";
let platform : String = "whatsapp";
let platformid : String = "100";
let destination : String = "3460000000";
let type : String = "image";
let fileurl : String = "https://www.example.com/image.jpg";
let thumburl : String = "https://www.example.com/thumb.jpg";
let message : String = "test+message";
let urlPath: String = "https://www.afilnet.com/api/http/"
let url: NSURL = NSURL(string: urlPath)!
let request1: NSMutableURLRequest = NSMutableURLRequest(url: url as URL)
request1.httpMethod = "POST"
let stringPost="class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&platform="+platform+"&platformid="+platformid+"&destination="+destination+"&type="+type+"&fileurl="+fileurl+"&thumburl="+thumburl+"&message="+message
let data = stringPost.data(using: String.Encoding.utf8)
request1.timeoutInterval = 60
request1.httpBody=data
request1.httpShouldHandleCookies=false
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as Error {
print(error.localizedDescription)
}let aclass : String = "chat";
let method : String = "getchats";
let user : String = "user";
let password : String = "password";
let platform : String = "whatsapp";
let platformid : String = "100";
let urlPath: String = "https://www.afilnet.com/api/http/?+"&class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&platform="+platform+"&platformid="+platformid
let url: NSURL = NSURL(string: urlPath)!
let request1: NSURLRequest = NSURLRequest(url: url as URL)
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as NSError {
print(error.localizedDescription)
}
})
let aclass : String = "chat";
let method : String = "getchats";
let user : String = "user";
let password : String = "password";
let platform : String = "whatsapp";
let platformid : String = "100";
let urlPath: String = "https://www.afilnet.com/api/http/"
let url: NSURL = NSURL(string: urlPath)!
let request1: NSMutableURLRequest = NSMutableURLRequest(url: url as URL)
request1.httpMethod = "POST"
let stringPost="class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&platform="+platform+"&platformid="+platformid
let data = stringPost.data(using: String.Encoding.utf8)
request1.timeoutInterval = 60
request1.httpBody=data
request1.httpShouldHandleCookies=false
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as Error {
print(error.localizedDescription)
}
Parámetro | Descripción | Obligatorio / Opcional |
---|---|---|
class=chat | Clase a la que se realiza la petición | Obligatorio |
method=getchats | Método de la clase al que se realiza la petición | Obligatorio |
user | El usuario / email de su cuenta de Afilnet | Obligatorio |
password | El password de su cuenta de Afilnet | Obligatorio |
platform | Plataforma a la que se envía el mensaje. Valores posibles: 'webchat', 'whatsapp', 'telegram', 'operator' | Obligatorio |
platformid | Identificador de la plataforma | Obligatorio |
Respuesta:
- status
-
result (si status=success), recibirá los siguientes valores:
-
list
- platformid
- platform
- message
- destination
- messageid
- sent
- status
- datetime
-
list
- error (si status=error), aquí recibirá el código de error
Códigos de error:
Código | Descripción |
---|---|
MISSING_USER | Usuario / email no incluido |
MISSING_PASSWORD | Password no incluido |
MISSING_CLASS | Clase no incluida |
MISSING_METHOD | Método no incluido |
MISSING_COMPULSORY_PARAM | Parámetro obligatorio no incluido |
INCORRECT_USER_PASSWORD | Usuario o clave incorrectos |
INCORRECT_CLASS | Clase incorrecta |
INCORRECT_METHOD | Método incorrecto |
CHANNEL_NOT_FOUND | El canal indicado no existe |
CHAT_NOT_FOUND | El chat indicado no existe |
Obtener listado de mensajes de un chat con Swift
let aclass : String = "chat";
let method : String = "getchats";
let user : String = "user";
let password : String = "password";
let platform : String = "whatsapp";
let platformid : String = "100";
let urlPath: String = "https://www.afilnet.com/api/http/"
let url: NSURL = NSURL(string: urlPath)!
let request1: NSMutableURLRequest = NSMutableURLRequest(url: url as URL)
request1.httpMethod = "POST"
let stringPost="class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&platform="+platform+"&platformid="+platformid
let data = stringPost.data(using: String.Encoding.utf8)
request1.timeoutInterval = 60
request1.httpBody=data
request1.httpShouldHandleCookies=false
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as Error {
print(error.localizedDescription)
}let aclass : String = "chat";
let method : String = "getmessages";
let user : String = "user";
let password : String = "password";
let platform : String = "whatsapp";
let platformid : String = "100";
let destination : String = "34600000000";
let urlPath: String = "https://www.afilnet.com/api/http/?+"&class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&platform="+platform+"&platformid="+platformid+"&destination="+destination
let url: NSURL = NSURL(string: urlPath)!
let request1: NSURLRequest = NSURLRequest(url: url as URL)
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as NSError {
print(error.localizedDescription)
}
})
let aclass : String = "chat";
let method : String = "getmessages";
let user : String = "user";
let password : String = "password";
let platform : String = "whatsapp";
let platformid : String = "100";
let destination : String = "34600000000";
let urlPath: String = "https://www.afilnet.com/api/http/"
let url: NSURL = NSURL(string: urlPath)!
let request1: NSMutableURLRequest = NSMutableURLRequest(url: url as URL)
request1.httpMethod = "POST"
let stringPost="class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&platform="+platform+"&platformid="+platformid+"&destination="+destination
let data = stringPost.data(using: String.Encoding.utf8)
request1.timeoutInterval = 60
request1.httpBody=data
request1.httpShouldHandleCookies=false
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as Error {
print(error.localizedDescription)
}
Parámetro | Descripción | Obligatorio / Opcional |
---|---|---|
class=chat | Clase a la que se realiza la petición | Obligatorio |
method=getmessages | Método de la clase al que se realiza la petición | Obligatorio |
user | El usuario / email de su cuenta de Afilnet | Obligatorio |
password | El password de su cuenta de Afilnet | Obligatorio |
platform | Plataforma a la que se envía el mensaje. Valores posibles: 'webchat', 'whatsapp', 'telegram', 'operator' | Obligatorio |
platformid | Identificador de la plataforma | Obligatorio |
destination | Destinatario del cual se quiere obtener los mensajes | Obligatorio |
Respuesta:
- status
-
result (si status=success), recibirá los siguientes valores:
-
list
- platformid
- platform
- message
- destination
- messageid
- sent
- status
- datetime
-
list
- error (si status=error), aquí recibirá el código de error
Códigos de error:
Código | Descripción |
---|---|
MISSING_USER | Usuario / email no incluido |
MISSING_PASSWORD | Password no incluido |
MISSING_CLASS | Clase no incluida |
MISSING_METHOD | Método no incluido |
MISSING_COMPULSORY_PARAM | Parámetro obligatorio no incluido |
INCORRECT_USER_PASSWORD | Usuario o clave incorrectos |
INCORRECT_CLASS | Clase incorrecta |
INCORRECT_METHOD | Método incorrecto |
CHANNEL_NOT_FOUND | El canal indicado no existe |
CHAT_NOT_FOUND | El chat indicado no existe |
Obtener listado de mensajes no leídos de un chat con Swift
let aclass : String = "chat";
let method : String = "getmessages";
let user : String = "user";
let password : String = "password";
let platform : String = "whatsapp";
let platformid : String = "100";
let destination : String = "34600000000";
let urlPath: String = "https://www.afilnet.com/api/http/"
let url: NSURL = NSURL(string: urlPath)!
let request1: NSMutableURLRequest = NSMutableURLRequest(url: url as URL)
request1.httpMethod = "POST"
let stringPost="class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&platform="+platform+"&platformid="+platformid+"&destination="+destination
let data = stringPost.data(using: String.Encoding.utf8)
request1.timeoutInterval = 60
request1.httpBody=data
request1.httpShouldHandleCookies=false
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as Error {
print(error.localizedDescription)
}let aclass : String = "chat";
let method : String = "getunreadmessages";
let user : String = "user";
let password : String = "password";
let platform : String = "whatsapp";
let platformid : String = "100";
let destination : String = "34600000000";
let urlPath: String = "https://www.afilnet.com/api/http/?+"&class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&platform="+platform+"&platformid="+platformid+"&destination="+destination
let url: NSURL = NSURL(string: urlPath)!
let request1: NSURLRequest = NSURLRequest(url: url as URL)
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as NSError {
print(error.localizedDescription)
}
})
let aclass : String = "chat";
let method : String = "getunreadmessages";
let user : String = "user";
let password : String = "password";
let platform : String = "whatsapp";
let platformid : String = "100";
let destination : String = "34600000000";
let urlPath: String = "https://www.afilnet.com/api/http/"
let url: NSURL = NSURL(string: urlPath)!
let request1: NSMutableURLRequest = NSMutableURLRequest(url: url as URL)
request1.httpMethod = "POST"
let stringPost="class="+aclass+"&method="+method+"&user="+user+"&password="+password+"&platform="+platform+"&platformid="+platformid+"&destination="+destination
let data = stringPost.data(using: String.Encoding.utf8)
request1.timeoutInterval = 60
request1.httpBody=data
request1.httpShouldHandleCookies=false
let queue:OperationQueue = OperationQueue()
NSURLConnection.sendAsynchronousRequest(request1 as URLRequest, queue: queue, completionHandler:{ (response: URLResponse?, data: Data?, error: Error?) -> Void in
do {
if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary {
// Do something with result
}
} catch let error as Error {
print(error.localizedDescription)
}
Parámetro | Descripción | Obligatorio / Opcional |
---|---|---|
class=chat | Clase a la que se realiza la petición | Obligatorio |
method=getunreadmessages | Método de la clase al que se realiza la petición | Obligatorio |
user | El usuario / email de su cuenta de Afilnet | Obligatorio |
password | El password de su cuenta de Afilnet | Obligatorio |
platform | Plataforma a la que se envía el mensaje. Valores posibles: 'webchat', 'whatsapp', 'telegram', 'operator' | Obligatorio |
platformid | Identificador de la plataforma | Obligatorio |
destination | Destinatario del cual se quiere obtener los mensajes | Obligatorio |
Respuesta:
- status
-
result (si status=success), recibirá los siguientes valores:
-
list
- platformid
- platform
- message
- destination
- messageid
- issent
- status
- datetime
-
list
- error (si status=error), aquí recibirá el código de error
Códigos de error:
Código | Descripción |
---|---|
MISSING_USER | Usuario / email no incluido |
MISSING_PASSWORD | Password no incluido |
MISSING_CLASS | Clase no incluida |
MISSING_METHOD | Método no incluido |
MISSING_COMPULSORY_PARAM | Parámetro obligatorio no incluido |
INCORRECT_USER_PASSWORD | Usuario o clave incorrectos |
INCORRECT_CLASS | Clase incorrecta |
INCORRECT_METHOD | Método incorrecto |
CHANNEL_NOT_FOUND | El canal indicado no existe |
CHAT_NOT_FOUND | El chat indicado no existe |
¿Qué API para Swift debo utilizar?
Descubra las ventajas e inconvenientes de cada una de nuestras APIs. Descubra cual API es mejor para su Software en Swift.
Esta API permite conectar con nosotros desde Swift para enviar peticiones a través de peticiones HTTP GET. Esta petición envía los parámetros en la misma URL de la petición.
- HTTP GET es extremadamente sencillo de implementar
- Información se envía no cifrada (Se podría extraer contraseñas de logs o caché)
- Petición máximas de ~4000 caracteres
La API de peticiones POST le permite conectar con nuestra API desde Swift enviando los parámetros de la petición por parámetros HTTP POST. La información se envía de forma independiente a la URL.
- HTTP POST es sencillo de implementar
- Información se envía cifrada
- No hay limite en el tamaño de la petición
- Seguridad media
La API de autenticación básica permite la utilización de peticiones GET y POST en Swift con una capa de seguridad adicional, ya que en este caso el usuario y clave se envía en la cabecera de la petición.
- La autenticación básica es sencilla de implementar
- Datos de acceso se envían cifrados
- El límite del tamaño depende del uso de GET o POST
- Seguridad media
SOAP le permite enviar peticiones en formato XML con Swift, SOAP añade capa de seguridad extra en las peticiones API.
- La integración SOAP es más compleja
- Información se envía cifrada
- No hay limite en el tamaño de la petición
- Seguridad media / alta
Nuestra API JSON le permite enviar peticiones en formato JSON con Swift, además esta API añade el protocolo oAuth 2.0 en la autenticación que le permite añadir una capa adicional de seguridad.
- La integración JSON oAuth 2.0 es más compleja
- Información se envía cifrada
- No hay limite en el tamaño de la petición
- Seguridad alta
Conectar Swift con nuestra API de Chats
Regístrese como cliente
Para poder tener acceso a la API debe ser cliente de Afilnet. El registro le llevará pocos minutos.
Solicite su prueba gratuita
Nuestra empresa le ofrecerá saldo de prueba que le permitirá realizar las pruebas con la API que necesite.
Integre la API
Realice la integración de la API utilizando el lenguaje de programación que deseen. Si tiene alguna duda o sugerencía sobre la API contáctenos
¡Bienvenido a Afilnet!
¡Todo listo!, ha conseguido mejorar sus comunicaciones con Afilnet. Estamos para darle soporte de nuestra API cuando lo necesite
Contacte con nuestro equipo a través de cualquiera duda a través de los métodos de contacto que le ofrecemos. Nuestro equipo intentará ofrecerla una solución inmediata y le ayudará en la integración de nuestra API en su Software.