컨트렉트 배포 문의 드립니다

const tx = {

        from: '0x07fF72ab70Cda76D0A5071f6Eee0bf3EDBC9d2FA',

        to : '0xc6a2ad8cc6e4a7e08fc37cc5954be07d499e7654',

        value: 0,

        input: '0x52f28c17000000000000000000000000dcd62c57182e780e23d2313c4782709da85b9d6c0000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a47842d61eed5300000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000',

        gas: 100000,

        submit: true

      }

      const result = await caver.kas.wallet.requestSmartContractExecution(tx)

    console.log(result)

현재 상황이 계정 지갑에 TF토큰이 있어서 TF토큰을 klay로 스왑을 하고 싶은데 klay → TF토큰으로 바꾸는 작업은 했는데 TF토큰 → klay로 변경이안되서 테스트가 힘드네요ㅠㅠ 혹시 예제코드나 비슷한 문의사항이나 도움받을수있을까요 ?ㅠㅠ

@mpos2m

안녕하세요.

Klay → TF 토큰으로 바꾸는 작업은 어떻게 테스트를 하셨을까요~?

스왑은 또 어떻게 하고 계신걸까요~?

질문이 다소 포괄적이라 최대한 상세하게 사용하신 소스 코드 등 최대한 디테일하게 공유 부탁드립니다.

만약 특정 스왑 서비스 관련 문의라면 해당 서비스를 만든 개발사에 문의를 해보셔야 합니다 :slight_smile:

혹시 스왑을 이용하기 위한 컨트렉트 호출 순서를 알 수 있을까요…?
와 진짜 이래저래 계속 해보는데 안되어서요ㅜㅜ

해당 컨트랙트 주소를 보니 클레이스왑을 이용하신것 같습니다.

이는 스왑 함수의 input을 어떤조건으로 설정하는지 부분인데, 여러함수가 존재하고, 어떤 함수를 사용하는지에따라 입력갑 조건등이 다르기때문에, 자세한 정보를 공유해주셔야 답변드리기가 용이합니다.

컨트랙트 자체 사용방법이 궁금하신거면 관련정보는 support@klayswap.com을 통해 문의주시는게 좋을것같습니다.

감사합니다.

안녕하세요 답변주셔서 정말 감사합니다!
support@klayswap.com에 문의를 3일전에 했었는데… 답장이 오지 않아서 계속 독학중입니다.
실례가 되지 않는다면 ## LoranceCall 님께 여쭈어도 괜찮을까요?

클레이튼 → 다른 토큰(들)으로 스왑 또는 토큰간의 스왑을 하고싶습니다.
컨트렉트 주소 0xc6a2ad8cc6e4a7e08fc37cc5954be07d499e7654를 이용해서
어떤 함수를 써야 스왑이 발생되는지 전혀 감이 안옵니다…
클레이스코프에서 확인했을 때 Method : 0x52f28c17를 사용하는건 알겠는데
이게 어떤 함수인지 모르겠더라구요ㅜㅜ

혹시… 제가 지금 하고있는게 맞을까요…?

개발환경은 js입니다!

개인적으로 답을 드리는것 보다는 공부에 도움을 드리는 편이 좋을것 같네요. ^^

일단 어떤함수가 사용되었는지는 다음 홈페이지에서 검색 가능하세요.

https://www.4byte.directory/

결과는 다음과 같습니다.
exchangeKctPos(address,uint256,address,uint256,address[])

위 방법은, 이미 공개된 함수만 가능합니다. 이 데이터베이스에 존재하지 않는 메소드인 경우에는 서비스 제공하는 측에 해당 ABI 요청드리는 방식으로 진행해주시면 됩니다.

결과가 나온 후 이 메소드에 대한 설명은 docs.klayswap.com 에서 찾아보시면되고요.

제가 검색해본 결과 설명은 다음과 같습니다.
해당메소드는 클레이 → 토큰 으로 스왑되는 함수는 아닌것으로 보입니다. 계속 에러가난다면 문서통해서 이부분확인해주세요.

exchangeKctPos

1

function exchangeKctPos(address tokenA, uint amountA, address tokenB, uint amountB, address[] memory path) public

Copied!

  • Method called when the token to be paid is KIP7 and a POS transaction is desired

  • Parameters

    • tokenA : address of token to be paid

    • amountA : the amount of tokens to be paid

    • tokenB : address of token to be received

      • When KLAY, it is 0x0
    • amountB : the minimum amount of tokens that you want to receive

      • If the amount of tokens to be received is lower than this amount, the Tx will fail.
    • path :list of token addresses to go through for routing transactions

      • If routing transaction is not needed, submit empty list

도움 되셨길 바랍니다!

참고로 질문이 컨트랙트 배포에 대한 문의가 아닌것같습니다. 제목 변경 부탁드릴수있을까요? 추후 다른분이 같은 이슈로 검색을 하실때 도움이 될것같습니다.

예를들어 “KlaySwap factory contract로 swap하는 방법” 등의 제목이 주제에 맞을것같습니다.

감사합니다!

2개의 좋아요

와… 정말 진심으로 감사드립니다!
말씀하신내용 정리해서 다른분들 보실 수 있도록 다시 올리도록 하겠습니다!
좋은밤 되세요! 다시한번 감사합니다!!ㅜㅜ

1개의 좋아요