인스턴스에서 SPL 토큰 민트를 허용하고 해당 민트에 대한 에스크로의 associated token account를 생성합니다. 이 호출 이후 해당 민트에 대한 입금이 가능해집니다.
계정
| 계정 | 쓰기 가능 | 서명자 | 설명 |
|---|---|---|---|
payer | ✓ | ✓ | 수수료 지불자 |
admin | ✓ | 인스턴스 관리자 | |
instance | 인스턴스 PDA | ||
mint | 허용할 SPL 토큰 민트 | ||
allowed_mint | ✓ | AllowedMint PDA (이 명령어로 생성됨) | |
instance_ata | ✓ | 이 민트에 대한 에스크로의 associated token account (이 명령어로 생성됨) | |
system_program | System Program | ||
token_program | SPL Token Program | ||
associated_token_program | Associated Token Program | ||
event_authority | 이벤트 권한 PDA | ||
private_channel_escrow_program | 에스크로 프로그램 |
파라미터
| 파라미터 | 타입 | 설명 |
|---|---|---|
bump | u8 | allowed_mint PDA에 대한 bump seed. 선택 사항: 생략 시 Async 클라이언트가 자동으로 도출합니다 |
IDL에는
discriminator: u8인수(값1)가 포함되어 있으며, 이는 생성된 클라이언트에 의해 자동으로 설정되므로 수동으로 전달하지 않아야 합니다.
중요 사항
getAllowMintInstructionAsync를 사용하세요. 이 함수는bump,allowed_mint,instance_ata가 제공되지 않은 경우 자동으로 도출합니다. 이미Pubkey::find_program_address(&[b"allowed_mint", instance_pda, mint], &PROGRAM_ID)를 통해 직접 계산한 경우에만bump를 직접 전달하세요- 이 명령어는 이 민트에 대한 에스크로의 ATA인
instance_ata도 함께 생성합니다 - 전송 훅 확장이 있는 민트는 명시적으로 차단됩니다. 해당 민트를 허용하려 하면
TransferHookNotAllowed오류가 발생합니다 EmitEventCPI를 통해 이벤트를 발행합니다
Is this page helpful?