microsoft-graph-client 1.0.42 → 1.0.43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  import { BaseApi } from './base.js';
2
2
  import { type GetCurrentUserParams, type GetUserParams, type GetUserPhotoMetadataParams, type GetUserPhotoParams, type GetUserPhotoResult, type SearchUsersParams, type User, type UserPhotoMetadata } from '../types/index.js';
3
- import type { SetPreferredPresenceParams } from '../types/presence.js';
3
+ import type { SetPreferredPresenceParams, SetPresenceParams } from '../types/presence.js';
4
4
  /**
5
5
  * API for user operations.
6
6
  */
@@ -31,7 +31,20 @@ export declare class UsersApi extends BaseApi {
31
31
  getPhotoMetadata(params: GetUserPhotoMetadataParams): Promise<UserPhotoMetadata>;
32
32
  /**
33
33
  * Set the user's preferred presence status.
34
+ *
35
+ * The preferred presence is only displayed when the user has at least one
36
+ * active presence session. If no application or client session exists, the
37
+ * user's presence stays as Offline regardless of the preferred value. To
38
+ * keep a non-interactive bot account shown as Online, use {@link setPresence}
39
+ * instead — it creates an application presence session.
34
40
  */
35
41
  setPreferredPresence(params: SetPreferredPresenceParams): Promise<void>;
42
+ /**
43
+ * Set a user's presence by creating or updating an application presence
44
+ * session. Unlike {@link setPreferredPresence}, this drives the actual
45
+ * presence shown to other Teams users — useful for non-interactive bot
46
+ * accounts that are never signed in to a Teams client.
47
+ */
48
+ setPresence(params: SetPresenceParams): Promise<void>;
36
49
  }
37
50
  //# sourceMappingURL=users.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"users.d.ts","sourceRoot":"","sources":["../../src/api/users.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAGL,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,0BAA0B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EAEvB,KAAK,iBAAiB,EACtB,KAAK,IAAI,EACT,KAAK,iBAAiB,EACvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAGvE;;GAEG;AACH,qBAAa,QAAS,SAAQ,OAAO;IACnC;;;OAGG;IACU,cAAc,CAAC,MAAM,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAO7E;;OAEG;IACU,GAAG,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAOtD;;OAEG;IACU,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAU/D;;;;OAIG;IACU,QAAQ,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAkB9E;;;OAGG;IACU,gBAAgB,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAoB7F;;OAEG;IACU,oBAAoB,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC,IAAI,CAAC;CAOrF"}
1
+ {"version":3,"file":"users.d.ts","sourceRoot":"","sources":["../../src/api/users.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAGL,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,0BAA0B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EAEvB,KAAK,iBAAiB,EACtB,KAAK,IAAI,EACT,KAAK,iBAAiB,EACvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG1F;;GAEG;AACH,qBAAa,QAAS,SAAQ,OAAO;IACnC;;;OAGG;IACU,cAAc,CAAC,MAAM,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAO7E;;OAEG;IACU,GAAG,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAOtD;;OAEG;IACU,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAU/D;;;;OAIG;IACU,QAAQ,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAkB9E;;;OAGG;IACU,gBAAgB,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAoB7F;;;;;;;;OAQG;IACU,oBAAoB,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC,IAAI,CAAC;IAQpF;;;;;OAKG;IACU,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;CAQnE"}
package/dist/api/users.js CHANGED
@@ -71,6 +71,12 @@ export class UsersApi extends BaseApi {
71
71
  }
72
72
  /**
73
73
  * Set the user's preferred presence status.
74
+ *
75
+ * The preferred presence is only displayed when the user has at least one
76
+ * active presence session. If no application or client session exists, the
77
+ * user's presence stays as Offline regardless of the preferred value. To
78
+ * keep a non-interactive bot account shown as Online, use {@link setPresence}
79
+ * instead — it creates an application presence session.
74
80
  */
75
81
  async setPreferredPresence(params) {
76
82
  await this.client.api('/me/presence/setUserPreferredPresence').post({
@@ -79,5 +85,19 @@ export class UsersApi extends BaseApi {
79
85
  expirationDuration: params.expirationDuration,
80
86
  });
81
87
  }
88
+ /**
89
+ * Set a user's presence by creating or updating an application presence
90
+ * session. Unlike {@link setPreferredPresence}, this drives the actual
91
+ * presence shown to other Teams users — useful for non-interactive bot
92
+ * accounts that are never signed in to a Teams client.
93
+ */
94
+ async setPresence(params) {
95
+ await this.client.api(`/users/${params.userId}/presence/setPresence`).post({
96
+ sessionId: params.sessionId,
97
+ availability: params.availability,
98
+ activity: params.activity || params.availability,
99
+ expirationDuration: params.expirationDuration,
100
+ });
101
+ }
82
102
  }
83
103
  //# sourceMappingURL=users.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"users.js","sourceRoot":"","sources":["../../src/api/users.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"users.js","sourceRoot":"","sources":["../../src/api/users.ts"],"names":[],"mappings":"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"}
package/dist/client.d.ts CHANGED
@@ -33,7 +33,7 @@ export declare class GraphClient {
33
33
  private _subscriptions;
34
34
  constructor(config: GraphClientConfig);
35
35
  /**
36
- * User operations: getCurrentUser, get, search, setPreferredPresence
36
+ * User operations: getCurrentUser, get, search, getPhoto, getPhotoMetadata, setPreferredPresence, setPresence
37
37
  */
38
38
  get users(): UsersApi;
39
39
  /**
package/dist/client.js CHANGED
@@ -36,7 +36,7 @@ export class GraphClient {
36
36
  }
37
37
  // Domain API accessors (getters come before methods)
38
38
  /**
39
- * User operations: getCurrentUser, get, search, setPreferredPresence
39
+ * User operations: getCurrentUser, get, search, getPhoto, getPhotoMetadata, setPreferredPresence, setPresence
40
40
  */
41
41
  get users() {
42
42
  if (!this._users) {
@@ -1,6 +1,13 @@
1
1
  export type PresenceAvailability = 'Available' | 'Away' | 'BeRightBack' | 'Busy' | 'DoNotDisturb' | 'InACall' | 'InAMeeting' | 'Offline' | 'PresenceUnknown' | 'Presenting';
2
2
  export type PreferredPresenceAvailability = 'Available' | 'Away' | 'BeRightBack' | 'Busy' | 'DoNotDisturb' | 'Offline';
3
3
  export interface SetPresenceParams {
4
+ /** Object ID (oid) of the user whose presence is being set. */
5
+ userId: string;
6
+ /**
7
+ * GUID identifying the application's presence session. For delegated calls,
8
+ * this must match the OAuth client ID that minted the access token.
9
+ */
10
+ sessionId: string;
4
11
  availability: PresenceAvailability;
5
12
  activity?: PresenceAvailability;
6
13
  /** ISO 8601 duration (e.g., 'PT1H' for 1 hour) */
@@ -1 +1 @@
1
- {"version":3,"file":"presence.d.ts","sourceRoot":"","sources":["../../src/types/presence.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,oBAAoB,GAC5B,WAAW,GACX,MAAM,GACN,aAAa,GACb,MAAM,GACN,cAAc,GACd,SAAS,GACT,YAAY,GACZ,SAAS,GACT,iBAAiB,GACjB,YAAY,CAAC;AAEjB,MAAM,MAAM,6BAA6B,GAAG,WAAW,GAAG,MAAM,GAAG,aAAa,GAAG,MAAM,GAAG,cAAc,GAAG,SAAS,CAAC;AAMvH,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,oBAAoB,CAAC;IACnC,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,kDAAkD;IAClD,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,0BAA0B;IACzC,YAAY,EAAE,6BAA6B,CAAC;IAC5C,QAAQ,CAAC,EAAE,6BAA6B,CAAC;IACzC,mDAAmD;IACnD,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B"}
1
+ {"version":3,"file":"presence.d.ts","sourceRoot":"","sources":["../../src/types/presence.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,oBAAoB,GAC5B,WAAW,GACX,MAAM,GACN,aAAa,GACb,MAAM,GACN,cAAc,GACd,SAAS,GACT,YAAY,GACZ,SAAS,GACT,iBAAiB,GACjB,YAAY,CAAC;AAEjB,MAAM,MAAM,6BAA6B,GAAG,WAAW,GAAG,MAAM,GAAG,aAAa,GAAG,MAAM,GAAG,cAAc,GAAG,SAAS,CAAC;AAMvH,MAAM,WAAW,iBAAiB;IAChC,+DAA+D;IAC/D,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,oBAAoB,CAAC;IACnC,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,kDAAkD;IAClD,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,0BAA0B;IACzC,YAAY,EAAE,6BAA6B,CAAC;IAC5C,QAAQ,CAAC,EAAE,6BAA6B,CAAC;IACzC,mDAAmD;IACnD,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "microsoft-graph-client",
3
- "version": "1.0.42",
3
+ "version": "1.0.43",
4
4
  "publish": true,
5
5
  "description": "TypeScript client library for Microsoft Graph API with built-in authentication",
6
6
  "type": "module",
@@ -35,8 +35,8 @@
35
35
  "eslint": "^9.39.0",
36
36
  "typescript": "^5.7.2",
37
37
  "vitest": "^4.0.16",
38
- "config-eslint": "0.0.0",
39
- "config-typescript": "0.0.0"
38
+ "config-typescript": "0.0.0",
39
+ "config-eslint": "0.0.0"
40
40
  },
41
41
  "engines": {
42
42
  "node": ">=22.0.0"