Nestgram
  • ⭐About Nestgram
  • 📄Guide
  • 📰News
  • đŸ”ŧHandling updates
    • Handling commands
    • Handling text messages
    • Handling other updates
    • Entities: url, email and other
    • Other arguments in handler
    • Handling media files and download it
  • đŸĒļNestgram Features
    • Services
    • Middlewares and Params
    • Sending messages correctly
    • Answer class
    • Scopes
    • States
    • Views
  • đŸ’ŦMessages
    • Sending a photo, video and other media
    • Sending a media group
    • Send location (live) or venue
    • Send contact
    • Send poll
    • Send dice
    • Edit/delete messages
    • Copy or Forward a message
  • âŒ¨ī¸Keyboards
    • Keyboard types, building keyboard
    • Handle underTheMessage keyboard button click by Alert or Toast
    • Keyboard layouts
  • âš™ī¸Config
    • CLI
    • Webhooks and run config
    • Api class
    • Modules
      • Mongo module
    • Controller Helper class
  • 🤖API Reference
    • Set chat action
    • Save user profile photo
    • Ban, unban user or chat
    • Restrict or Promote user
    • Set chat permissions
    • Set chat admin custom title
    • Chat invite links
    • Join requests
    • Update chat info, photo, title, description and more
    • Pin or unpin messages
    • Get chat info, leave chat
    • Check user subscription
    • Chat sticker set
    • My commands
    • My default admin rights
    • Menu button
Powered by GitBook
On this page
  1. API Reference

Save user profile photo

You can save any user profile photo by index

To save user profile photo, use .saveProfilePhoto answer method or SaveProfilePhoto class-method

SaveProfilePhoto class-methods or .saveProfilePhoto method take arguments:

Argument
Description
Required
1

Path in which you want to save profile photo

Required

2

Index of the profile photo you want to save

Optional. 0 by default

app.controller.ts
import { Controller, OnCommand, GetAnswer, Answer, ChatAction, SaveProfilePhoto, Photo } from 'nestgram';
import { AppService } from './app.service';
import * as path from 'path';

@Controller()
export class AppController {
  constructor(private readonly appService: AppService) {}

  @OnCommand('start')
  async getChatAction(@GetAnswer() answer: Answer): Promise<ChatAction> {
    const imgPath: string = path.resolve(__dirname, 'profile-photo.jpeg');

    return new ChatAction('upload_photo')
      .next(new SaveProfilePhoto(imgPath))
      .next(new Photo('path', imgPath, null, false))
  }
}

In the 15th line, we disabled the cache with the 4th argument, because user photo may change

PreviousSet chat actionNextBan, unban user or chat

Last updated 2 years ago

🤖