Skip to content

Commit f24cac2

Browse files
authored
fix: send correct user-agent header for websocket methods (#930)
1 parent 5633782 commit f24cac2

File tree

3 files changed

+18
-18
lines changed

3 files changed

+18
-18
lines changed

speech-to-text/v1.ts

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,10 @@
11
import async = require('async');
22
import extend = require('extend');
33
import isStream = require('isstream');
4+
import { getSdkHeaders } from '../lib/common';
45
import RecognizeStream = require('../lib/recognize-stream');
56
import GeneratedSpeechToTextV1 = require('./v1-generated');
67

7-
// tslint:disable-next-line:no-var-requires
8-
const pkg = require('../package.json');
9-
10-
const protocols = {
11-
https: require('https'),
12-
http: require('http')
13-
};
14-
158
const PARAMS_ALLOWED = [
169
'max_alternatives',
1710
'timestamps',
@@ -192,11 +185,13 @@ class SpeechToTextV1 extends GeneratedSpeechToTextV1 {
192185
params.token_manager = this.tokenManager;
193186
}
194187

188+
// include analytics headers
189+
const sdkHeaders = getSdkHeaders('speech_to_text', 'v1', 'recognizeUsingWebSocket');
190+
195191
params.headers = extend(
196-
{
197-
'user-agent': pkg.name + '-nodejs-' + pkg.version,
198-
authorization: this._options.headers.Authorization
199-
},
192+
true,
193+
sdkHeaders,
194+
{ authorization: this._options.headers.Authorization },
200195
params.headers
201196
);
202197

test/unit/speech-helpers.test.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,10 @@ describe('speech_to_text', () => {
3131
const stream = speech_to_text.recognizeUsingWebSocket();
3232
expect(stream.options.url).toBe(service.url);
3333
expect(stream.options.headers.authorization).toBeTruthy();
34+
expect(stream.options.headers['User-Agent']).toBeTruthy();
35+
expect(stream.options.headers['X-IBMCloud-SDK-Analytics']).toBe(
36+
'service_name=speech_to_text;service_version=v1;operation_id=recognizeUsingWebSocket;async=true'
37+
);
3438
expect(stream.options.token_manager).toBeUndefined();
3539
});
3640

text-to-speech/v1.ts

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
import extend = require('extend');
2+
import { getSdkHeaders } from '../lib/common';
23
import SynthesizeStream = require('../lib/synthesize-stream');
34
import GeneratedTextToSpeechV1 = require('./v1-generated');
4-
// tslint:disable-next-line:no-var-requires
5-
const pkg = require('../package.json');
65

76
class TextToSpeechV1 extends GeneratedTextToSpeechV1 {
87
constructor(options) {
@@ -87,11 +86,13 @@ class TextToSpeechV1 extends GeneratedTextToSpeechV1 {
8786
params.token_manager = this.tokenManager;
8887
}
8988

89+
// include analytics headers
90+
const sdkHeaders = getSdkHeaders('text_to_speech', 'v1', 'synthesizeUsingWebSocket');
91+
9092
params.headers = extend(
91-
{
92-
'user-agent': pkg.name + '-nodejs-' + pkg.version,
93-
authorization: this._options.headers.Authorization
94-
},
93+
true,
94+
sdkHeaders,
95+
{ authorization: this._options.headers.Authorization },
9596
params.headers
9697
);
9798

0 commit comments

Comments
 (0)