11'use strict' ;
22
3- import { NativeModules } from 'react-native' ;
4- import EventRequest from './js/ResetContextsRequest' ;
3+ import { NativeModules } from 'react-native' ;
4+ import requestEvent from './js/ResetContextsRequest' ;
5+ import { ApiAiConstants } from 'api-ai-javascript' ;
56
67let ApiAi = NativeModules . ApiAi ;
78
8- ApiAi . startListening = ( onResult : ( ) = > { } , onError : ( ) => { } ) => {
9- ApiAi . startListeningNative ( ( r ) => onResult ( JSON . parse ( r ) ) , ( e ) => onError ( JSON . parse ( e ) ) )
9+ ApiAi . startListening = ( onResult : ( ) = > { } , onError : ( ) => { } ) => {
10+ ApiAi . startListeningNative ( ( r ) => onResult ( JSON . parse ( r ) ) , ( e ) => onError ( JSON . parse ( e ) ) )
1011} ;
1112
12- ApiAi . requestQuery = ( query : String , onResult : ( ) => { } , onError : ( ) => { } ) => {
13- ApiAi . requestQueryNative ( query , ( r ) => onResult ( JSON . parse ( r ) ) , ( e ) => onError ( JSON . parse ( e ) ) )
13+ ApiAi . requestQuery = ( query : String , onResult : ( ) => { } , onError : ( ) => { } ) => {
14+ ApiAi . requestQueryNative ( query , ( r ) => onResult ( JSON . parse ( r ) ) , ( e ) => onError ( JSON . parse ( e ) ) )
1415} ;
1516
1617ApiAi . setContexts = ( contexts ) => {
@@ -20,7 +21,7 @@ ApiAi.setContexts = (contexts) => {
2021ApiAi . setPermanentContexts = ( contexts ) => {
2122
2223 // set lifespan to 1 if it's not set
23- contexts . forEach ( ( c , i , a ) => {
24+ contexts . forEach ( ( c , i , a ) => {
2425 if ( ! c . lifespan ) {
2526 a [ i ] = { ...c , lifespan : 1 } ;
2627 }
@@ -29,26 +30,49 @@ ApiAi.setPermanentContexts = (contexts) => {
2930 ApiAi . setPermanentContextsAsJson ( JSON . stringify ( contexts ) )
3031} ;
3132
32- ApiAi . resetContexts = async ( onResult : ( ) => { } , onError : ( ) = > { } ) => {
33+ ApiAi . resetContexts = async ( onResult : ( ) => { } , onError : ( ) = > { } ) => {
3334 ApiAi . setContextsAsJson ( { } ) ;
3435
3536 const accessToken = await ApiAi . getAccessToken ( ) ;
3637 const sessionId = await ApiAi . getSessionId ( ) ;
3738 let request = new ResetContextsRequest ( accessToken , sessionId , null ) ;
38- request . perform ( ) . then ( res => onResult ( res ) ) . catch ( err => onError ( err ) ) ;
39+ request . perform ( ) . then ( res => onResult ( res ) ) . catch ( err => onError ( err ) ) ;
3940} ;
4041
4142ApiAi . setEntities = ( entities ) => {
4243 ApiAi . setEntitiesAsJson ( JSON . stringify ( entities ) )
4344} ;
4445
45- ApiAi . requestEvent = async ( eventName : string , eventData : { } , onResult : ( ) = > { } , onError : ( ) = > { } ) => {
46+ ApiAi . requestEvent = async ( eventName : string , eventData : { } , onResult : ( ) = > { } , onError : ( ) = > { } ) => {
4647
4748 const accessToken = await ApiAi . getAccessToken ( ) ;
4849 const sessionId = await ApiAi . getSessionId ( ) ;
4950 const languageTag = await ApiAi . getLanguage ( ) ;
50- let request = new EventRequest ( accessToken , sessionId , languageTag , { event : { name : eventName , data : eventData } } ) ;
51- request . perform ( ) . then ( res => onResult ( res ) ) . catch ( err => onError ( err ) ) ;
52- }
5351
54- module . exports = ApiAi ;
52+ const data = {
53+ "event" : {
54+ "name" : eventName ,
55+ "data" : {
56+ ...eventData
57+ }
58+ } ,
59+ 'lang' : languageTag ,
60+ "sessionId" : sessionId
61+ } ;
62+
63+ fetch ( ApiAiConstants . DEFAULT_BASE_URL + "query?v=" + ApiAiConstants . DEFAULT_API_VERSION , {
64+ method : "POST" ,
65+ headers : {
66+ 'Content-Type' : 'application/json' ,
67+ 'Authorization' : 'Bearer ' + accessToken ,
68+ 'charset' : "utf-8"
69+ } ,
70+ body : JSON . stringify ( data )
71+ } )
72+ . then ( function ( response ) {
73+ var json = response . json ( ) . then ( onResult )
74+ } )
75+ . catch ( onError ) ;
76+ } ;
77+
78+ module . exports = ApiAi ;
0 commit comments