11import { BaseApi } from '../../BaseApi' ;
22import { StreamResponse } from '../../types' ;
33import {
4+ CampaignResponse ,
45 CastPollVoteRequest ,
56 ChannelGetOrCreateRequest ,
67 ChannelStateResponse ,
@@ -16,18 +17,21 @@ import {
1617 DeleteChannelsResponse ,
1718 DeleteCommandResponse ,
1819 DeleteMessageResponse ,
20+ DeleteSegmentTargetsRequest ,
1921 EventResponse ,
2022 ExportChannelsRequest ,
2123 ExportChannelsResponse ,
2224 FileUploadRequest ,
2325 FileUploadResponse ,
26+ GetCampaignResponse ,
2427 GetChannelTypeResponse ,
2528 GetCommandResponse ,
2629 GetExportChannelsStatusResponse ,
2730 GetManyMessagesResponse ,
2831 GetMessageResponse ,
2932 GetReactionsResponse ,
3033 GetRepliesResponse ,
34+ GetSegmentResponse ,
3135 GetThreadResponse ,
3236 HideChannelRequest ,
3337 HideChannelResponse ,
@@ -50,6 +54,8 @@ import {
5054 PollVotesResponse ,
5155 QueryBannedUsersPayload ,
5256 QueryBannedUsersResponse ,
57+ QueryCampaignsRequest ,
58+ QueryCampaignsResponse ,
5359 QueryChannelsRequest ,
5460 QueryChannelsResponse ,
5561 QueryMembersPayload ,
@@ -62,6 +68,10 @@ import {
6268 QueryPollsResponse ,
6369 QueryReactionsRequest ,
6470 QueryReactionsResponse ,
71+ QuerySegmentTargetsRequest ,
72+ QuerySegmentTargetsResponse ,
73+ QuerySegmentsRequest ,
74+ QuerySegmentsResponse ,
6575 QueryThreadsRequest ,
6676 QueryThreadsResponse ,
6777 ReactionRemovalResponse ,
@@ -77,6 +87,9 @@ import {
7787 ShowChannelRequest ,
7888 ShowChannelResponse ,
7989 SortParamRequest ,
90+ StartCampaignRequest ,
91+ StartCampaignResponse ,
92+ StopCampaignRequest ,
8093 TranslateMessageRequest ,
8194 TruncateChannelRequest ,
8295 TruncateChannelResponse ,
@@ -108,6 +121,83 @@ import {
108121import { decoders } from '../model-decoders' ;
109122
110123export class ChatApi extends BaseApi {
124+ queryCampaigns = async (
125+ request ?: QueryCampaignsRequest ,
126+ ) : Promise < StreamResponse < QueryCampaignsResponse > > => {
127+ const body = {
128+ limit : request ?. limit ,
129+ next : request ?. next ,
130+ prev : request ?. prev ,
131+ sort : request ?. sort ,
132+ filter : request ?. filter ,
133+ } ;
134+
135+ const response = await this . sendRequest <
136+ StreamResponse < QueryCampaignsResponse >
137+ > ( 'POST' , '/api/v2/chat/campaigns/query' , undefined , undefined , body ) ;
138+
139+ decoders . QueryCampaignsResponse ?.( response . body ) ;
140+
141+ return { ...response . body , metadata : response . metadata } ;
142+ } ;
143+
144+ getCampaign = async ( request : {
145+ id : string ;
146+ } ) : Promise < StreamResponse < GetCampaignResponse > > => {
147+ const pathParams = {
148+ id : request ?. id ,
149+ } ;
150+
151+ const response = await this . sendRequest <
152+ StreamResponse < GetCampaignResponse >
153+ > ( 'GET' , '/api/v2/chat/campaigns/{id}' , pathParams , undefined ) ;
154+
155+ decoders . GetCampaignResponse ?.( response . body ) ;
156+
157+ return { ...response . body , metadata : response . metadata } ;
158+ } ;
159+
160+ startCampaign = async (
161+ request : StartCampaignRequest & { id : string } ,
162+ ) : Promise < StreamResponse < StartCampaignResponse > > => {
163+ const pathParams = {
164+ id : request ?. id ,
165+ } ;
166+ const body = {
167+ scheduled_for : request ?. scheduled_for ,
168+ stop_at : request ?. stop_at ,
169+ } ;
170+
171+ const response = await this . sendRequest <
172+ StreamResponse < StartCampaignResponse >
173+ > ( 'POST' , '/api/v2/chat/campaigns/{id}/start' , pathParams , undefined , body ) ;
174+
175+ decoders . StartCampaignResponse ?.( response . body ) ;
176+
177+ return { ...response . body , metadata : response . metadata } ;
178+ } ;
179+
180+ scheduleCampaign = async (
181+ request : StopCampaignRequest & { id : string } ,
182+ ) : Promise < StreamResponse < CampaignResponse > > => {
183+ const pathParams = {
184+ id : request ?. id ,
185+ } ;
186+ const body = { } ;
187+
188+ const response = await this . sendRequest < StreamResponse < CampaignResponse > > (
189+ 'POST' ,
190+ '/api/v2/chat/campaigns/{id}/stop' ,
191+ pathParams ,
192+ undefined ,
193+ body ,
194+ ) ;
195+
196+ decoders . CampaignResponse ?.( response . body ) ;
197+
198+ return { ...response . body , metadata : response . metadata } ;
199+ } ;
200+
111201 queryChannels = async (
112202 request ?: QueryChannelsRequest ,
113203 ) : Promise < StreamResponse < QueryChannelsResponse > > => {
@@ -712,6 +802,8 @@ export class ChatApi extends BaseApi {
712802 read_events : request ?. read_events ,
713803 replies : request ?. replies ,
714804 search : request ?. search ,
805+ skip_last_msg_update_for_system_msgs :
806+ request ?. skip_last_msg_update_for_system_msgs ,
715807 typing_events : request ?. typing_events ,
716808 uploads : request ?. uploads ,
717809 url_enrichment : request ?. url_enrichment ,
@@ -791,6 +883,8 @@ export class ChatApi extends BaseApi {
791883 reminders : request ?. reminders ,
792884 replies : request ?. replies ,
793885 search : request ?. search ,
886+ skip_last_msg_update_for_system_msgs :
887+ request ?. skip_last_msg_update_for_system_msgs ,
794888 typing_events : request ?. typing_events ,
795889 uploads : request ?. uploads ,
796890 url_enrichment : request ?. url_enrichment ,
@@ -1758,6 +1852,137 @@ export class ChatApi extends BaseApi {
17581852 return { ...response . body , metadata : response . metadata } ;
17591853 } ;
17601854
1855+ querySegments = async (
1856+ request : QuerySegmentsRequest ,
1857+ ) : Promise < StreamResponse < QuerySegmentsResponse > > => {
1858+ const body = {
1859+ filter : request ?. filter ,
1860+ limit : request ?. limit ,
1861+ next : request ?. next ,
1862+ prev : request ?. prev ,
1863+ sort : request ?. sort ,
1864+ } ;
1865+
1866+ const response = await this . sendRequest <
1867+ StreamResponse < QuerySegmentsResponse >
1868+ > ( 'POST' , '/api/v2/chat/segments/query' , undefined , undefined , body ) ;
1869+
1870+ decoders . QuerySegmentsResponse ?.( response . body ) ;
1871+
1872+ return { ...response . body , metadata : response . metadata } ;
1873+ } ;
1874+
1875+ deleteSegment = async ( request : {
1876+ id : string ;
1877+ } ) : Promise < StreamResponse < Response > > => {
1878+ const pathParams = {
1879+ id : request ?. id ,
1880+ } ;
1881+
1882+ const response = await this . sendRequest < StreamResponse < Response > > (
1883+ 'DELETE' ,
1884+ '/api/v2/chat/segments/{id}' ,
1885+ pathParams ,
1886+ undefined ,
1887+ ) ;
1888+
1889+ decoders . Response ?.( response . body ) ;
1890+
1891+ return { ...response . body , metadata : response . metadata } ;
1892+ } ;
1893+
1894+ getSegment = async ( request : {
1895+ id : string ;
1896+ } ) : Promise < StreamResponse < GetSegmentResponse > > => {
1897+ const pathParams = {
1898+ id : request ?. id ,
1899+ } ;
1900+
1901+ const response = await this . sendRequest < StreamResponse < GetSegmentResponse > > (
1902+ 'GET' ,
1903+ '/api/v2/chat/segments/{id}' ,
1904+ pathParams ,
1905+ undefined ,
1906+ ) ;
1907+
1908+ decoders . GetSegmentResponse ?.( response . body ) ;
1909+
1910+ return { ...response . body , metadata : response . metadata } ;
1911+ } ;
1912+
1913+ deleteSegmentTargets = async (
1914+ request : DeleteSegmentTargetsRequest & { id : string } ,
1915+ ) : Promise < StreamResponse < Response > > => {
1916+ const pathParams = {
1917+ id : request ?. id ,
1918+ } ;
1919+ const body = {
1920+ target_ids : request ?. target_ids ,
1921+ } ;
1922+
1923+ const response = await this . sendRequest < StreamResponse < Response > > (
1924+ 'POST' ,
1925+ '/api/v2/chat/segments/{id}/deletetargets' ,
1926+ pathParams ,
1927+ undefined ,
1928+ body ,
1929+ ) ;
1930+
1931+ decoders . Response ?.( response . body ) ;
1932+
1933+ return { ...response . body , metadata : response . metadata } ;
1934+ } ;
1935+
1936+ segmentTargetExists = async ( request : {
1937+ id : string ;
1938+ target_id : string ;
1939+ } ) : Promise < StreamResponse < Response > > => {
1940+ const pathParams = {
1941+ id : request ?. id ,
1942+ target_id : request ?. target_id ,
1943+ } ;
1944+
1945+ const response = await this . sendRequest < StreamResponse < Response > > (
1946+ 'GET' ,
1947+ '/api/v2/chat/segments/{id}/target/{target_id}' ,
1948+ pathParams ,
1949+ undefined ,
1950+ ) ;
1951+
1952+ decoders . Response ?.( response . body ) ;
1953+
1954+ return { ...response . body , metadata : response . metadata } ;
1955+ } ;
1956+
1957+ querySegmentTargets = async (
1958+ request : QuerySegmentTargetsRequest & { id : string } ,
1959+ ) : Promise < StreamResponse < QuerySegmentTargetsResponse > > => {
1960+ const pathParams = {
1961+ id : request ?. id ,
1962+ } ;
1963+ const body = {
1964+ limit : request ?. limit ,
1965+ next : request ?. next ,
1966+ prev : request ?. prev ,
1967+ sort : request ?. sort ,
1968+ filter : request ?. filter ,
1969+ } ;
1970+
1971+ const response = await this . sendRequest <
1972+ StreamResponse < QuerySegmentTargetsResponse >
1973+ > (
1974+ 'POST' ,
1975+ '/api/v2/chat/segments/{id}/targets/query' ,
1976+ pathParams ,
1977+ undefined ,
1978+ body ,
1979+ ) ;
1980+
1981+ decoders . QuerySegmentTargetsResponse ?.( response . body ) ;
1982+
1983+ return { ...response . body , metadata : response . metadata } ;
1984+ } ;
1985+
17611986 queryThreads = async (
17621987 request ?: QueryThreadsRequest ,
17631988 ) : Promise < StreamResponse < QueryThreadsResponse > > => {
@@ -1783,13 +2008,11 @@ export class ChatApi extends BaseApi {
17832008
17842009 getThread = async ( request : {
17852010 message_id : string ;
1786- connection_id ?: string ;
17872011 reply_limit ?: number ;
17882012 participant_limit ?: number ;
17892013 member_limit ?: number ;
17902014 } ) : Promise < StreamResponse < GetThreadResponse > > => {
17912015 const queryParams = {
1792- connection_id : request ?. connection_id ,
17932016 reply_limit : request ?. reply_limit ,
17942017 participant_limit : request ?. participant_limit ,
17952018 member_limit : request ?. member_limit ,
0 commit comments